目前使用Corona SDK创建游戏可能会有一个图像,当它被点击时它显示3个图像,一旦它们点击3个图像,分数增加1.此外我只是编码的初学者,这是给我一种新语言。感谢。
local CButton = display.newImage("+5.jpg" , 100 , 600)
CButton.alpha = 0.5
CButton.name = "CButton"
local CButtonLabel = display.newText( { text = "", x = 0, y = 0, fontSize = 28 } )
CButtonLabel:setTextColor( 0 ) ; CButtonLabel.x = 100 ; CButtonLabel.y = 45
local function touchCListener( event )
local object = event.target
print( event.target.name.." TOUCH on the '"..event.phase.."' Phase!" )
local ChordCOne = display.newImage("+5.jpg", 900,300)
local ChordCTwo = display.newImage("+5.jpg", 1000,300)
local ChordCThree = display.newImage("+5.jpg", 1100,300)
end
--add "touch" listener -- LABEL IS FOR TESTING!
CButton:addEventListener( "touch", touchCListener)
ChordCOne:addEventListener( "touch", updateScore)
CButtonLabel.text = "touch"
答案 0 :(得分:0)
是的,可以在侦听器函数中创建新的DisplayObject,并且还可以将侦听器添加到这些对象中。
在您的代码中,您尚未将侦听器中创建的DisplayObject添加到任何GroupObject(例如scene.view
),这会产生意外结果。
由于指向新创建的DisplayObjects(ChordCOne
等)的变量对于它们被实例化的函数是local
,因此您无法在函数外部调用它们addEventListener()
。您应该在创建监听器时添加它。
此外,updateScore()
侦听器功能未在任何地方定义。确保updateScore
在addEventListener()
作为参数的任何时间和地点都不为零。