關鍵字就是 function
function f (x, y) --定義一個叫做f的function,能夠傳入兩個參數,並回傳此兩參數相加之值
return (x+y)
end
print(f(2,3)) -- 5
-- 使用方法為 ()
-- 如:f(2,3),f(5,6)
上例便是一個簡單的function建制方法
再來要建制一個Listener
所謂的Listener 就是程式發生事件(Event)時會觸動
通常Event 在觸發時同時會傳送一個參數(event),讓使用者可以了解
觸動Event Type 和 Event Target(觸發物件)
常用到的Event 有 Touch Event & Tap Event
Touch Event 包含四種
- began
- moved
- ended
- cancelled
local object = display.newImage( "Icon.png" ) -- 產生圖片物件
object.id = "icon object" -- 給予物件id名稱
local function onObjectTouch( event )
if event.phase == "began" then -- 當物件開始touch
print( "Touch event began on: " .. event.target.id )
elseif event.phase == "moved" then --當在物件上做移動時
print( "Touch event moved on: " .. event.target.id )
elseif event.phase == "ended" then --當物件結束 touch
print( "Touch event ended on: " .. event.target.id )
end
return true
end
object:addEventListener( "touch", onObjectTouch ) -- 在這裡設touch 告訴系統要傾聽touch的event
執行結果如下
觸碰螢幕上圖片時會出現如右圖之文字
相較Touch Event,Tap Event 只有一種
local obj = display.newImage( "Icon.png" )
local function onObjectTap( event )
print( event.name,event.numTaps ) --可判斷tap做了幾次,支援1 & 2
end
obj:addEventListener( "tap", onObjectTap )
點擊後出現print |
以上就是簡單的Listener 實作方法
就Touch & Tap兩個Event 就能夠做出很豐富的操作介面嚕
來自小島
沒有留言:
張貼留言