如何使用CORONA SDK最简单的方式将按钮转换为*.lua文件

什么是制作连接到 *.lua 文件的最简单的按钮的方法?

我想制作类似于:main.lua(点击按钮)--> scene1.lua(BACK 点击按钮)--> main.lua

我尝试了这样的代码:

  local storyboard = require ("storyboard")
  local scene = storyboard.newScene()

  local logo tlo = display.newImage("bg.png", 360, 640)
  local zamow = display.newImage("1zamow.png", 185, 340)
  local gadgety= display.newImage("2gadgety.png", 535, 340)
  local facebook = display.newImage("3facebook.png", 185, 700)
  local oferta = display.newImage("4oferta.png", 535, 700)
  local cennik = display.newImage("5cennik.png", 185, 1060)
  local kontakt = display.newImage("6kontakt.png", 535, 1060)

  function cennik:touch (event)
  storyboard.gotoScene("cennik", "fade", 400)

  end

  cennik:addEventListener( "touch", cennik )

  return scene'

之后,我出现了运行时错误:

attempt to concatenate global 'sceneName' (a nil value)

我是 Corona 中的新手,请多多包涵 :)

点赞
用户2855211
用户2855211

使用小部件创建按钮会更好。如果cennik是您的按钮图片,scene1.lua是下一页,则代码可编写为:

local storyboard = require ("storyboard")
local widget=require "widget"

local scene = storyboard.newScene()

local logotlo = display.newImage("bg.png", 360, 640)
local zamow = display.newImage("1zamow.png", 185, 340)
local gadgety= display.newImage("2gadgety.png", 535, 340)
local facebook = display.newImage("3facebook.png", 185, 700)
local oferta = display.newImage("4oferta.png", 535, 700)
local kontakt = display.newImage("6kontakt.png", 535, 1060)
local cennikBtn

local function onStartButtonRelease()
    storyboard:gotoScene("scene1")
end
cennikBtn = widget.newButton {
    defaultFile="5cennik.png",
    onRelease=onStartButtonRelease
}
cennikBtn.x,cennikBtn.y =185, 1060

function scene:createScene(event)
    local group = self.view
    group:insert(logotlo)
    group:insert(zamow)
    group:insert(gadgety)
    group:insert(facebook)
    group:insert(oferta)
    group:insert(kontakt)
    group:insert(cennikBtn)
end

function scene:enterScene( event )
    local group = self.view
end

function scene:exitScene( event )
    local group = self.view
    storyboard.removeScene("main")
end

function scene:destroyScene( event )
    local group = self.view
end

scene:addEventListener("createScene", scene)

scene:addEventListener("enterScene", scene)

scene:addEventListener("exitScene", scene)

scene:addEventListener("destroyScene", scene)

return scene
2014-01-14 05:17:37
用户1078537
用户1078537

你的代码看起来没问题,除了return scene后面的 ',并且你的事件处理程序需要像这样:

- 每次你点击图像,这个事件会触发两次。确保你只发送一次gotoScene!

function cennik:touch(event)

    if event.phase == "began" then
        -- 当手指触摸时会发生这种情况
    elseif event.phase == "ended" then
        -- 当手指抬起时会发生这种情况
        storyboard.gotoScene("cennik", "fade", 400)
    end

    -- 如果你想防止触摸事件传播(也就是触发其他图像的触摸事件),你必须返回true
    return true
end
2014-06-19 22:26:49