场景切换应该怎么弄

看例子里面的切换场景都是在scene中通过app:enterNextScene()调用
myapp中的
function MyApp:enterNextScene()
self:enterScene(“NextScene”, nil, “fade”, 0.6, display.COLOR_WHITE)
end
函数来实现的
文档里面写的是:
– 创建一个新场景
local nextScene = display.newScene(“NextScene”)
– 包装过渡效果
local transition = display.wrapSceneWithTransition(nextScene, “fade”, 0.5)
– 切换到新场景
display.replaceScene(nextScene)

但是文档里面的这种方法好像没用啊,是方法不对吗?

1赞

为什么会没用呢?

最好把你的代码和错误信息贴出来。

local function onButtonClicked(tag)
–app:enterNextScene()
– 创建一个新场景
local nextScene = display.newScene(“NextScene”)
– 包装过渡效果
–local transition = display.wrapSceneWithTransition(nextScene, “fade”, 0.5)
– 切换到新场景
display.replaceScene(nextScene)

end

没有错误信息,运行后就黑屏 ,用app:enterNextScene()就能切换场景

local transition = display.wrapSceneWithTransition(nextScene, “fade”, 0.5, display.COLOR_WHITE) 换成这个试一下, 默认不传是黑色的。

还是不行啊,算了,我就按照例子里面的写法吧。

http://www.cnblogs.com/adoontheway/p/3820130.html
看看这个
我刚好做了个日记

补:
估计你的意思是你有NextScene.lua,里面也有自定义的东西,然后你用教程里面的方法的时候发现没有你自定义的NextScene上面的东西,以为是黑屏了。

这个的原因是:
display.newScene(“NextScene”)创建了一个name为NextScene的场景,而不是用的你那个NextScene.lua这个里面的场景。
可以参考一下我5楼的帖子。

:14:果然是的啊,已经ok了,感谢喽!!!

发现这样写也可以,其实就是获取NextScene的时候,用local nextScene = display.newScene(“NextScene”)方法没有获取到

local AnotherScene = require("../scripts/app/scenes/NextScene")
    
    nexScene = AnotherScene:new();
    local transition = display.wrapSceneWithTransition(nexScene, "fade", 0.5, display.COLOR_WHITE) 
    
    display.replaceScene(transition)


```