After a bunch of testing I think my own problem was caused by two separate issues:
-
I was incorrectly setting a transition time variable to nil within my scene transition function. This actually works in build 1206 where transitions default to a time of 1/2 second if no time parameter is specified (or set to nil as I was erroniously doing). For example
local box = display.newRect(100,100,50,50) transition.to(box,{delay = 1000, time = nil, y = 400})
This simple code above will move a box down the screen over 1/2 second in build 1206. But in build 1207 the box will snap to the final position without any transition. The old default behavior was masking an error in my code since the time I thought I was passing was about the same length as the default. Now, the daily docs for transition.to still says
params.time (optional)
Number. Specifies the duration of the transition in milliseconds. By default, the duration is 500 milliseconds
So either the current docs are wrong if the new intention for transition 2.0 is to not have a default transition time, or this is a bug in transitions 2.0.
-
My second, and main problem, is caused by this chunk of code that I call within my custom scene transition function to cleanup any runtime listeners in the old scene before I create the new scene:
--cleanup any enterFrame runtime listeners in old scene if Runtime._functionListeners.enterFrame then for k,v in pairs(Runtime._functionListeners.enterFrame) do Runtime:removeEventListener(“enterFrame”,v) end end
In build 1206 this works; my transitions all work, and my scenes display correctly, etc.
In build 1207 this causes the old scene to freeze on screen. I can tell from the console that my new scene is loading, but it isn’t displaying anything. It appears that none of the transition.to or transition.from will work once this cleanup code is run. I’m guessing that Transition 2.0 requires something that Transition 1.0 doesn’t that is getting wiped out by that code.
Admittedly, that cleanup code is a hack to solve a different problem. I think I have another way to work around that, so hopefully I won’t need to use it anymore.