Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 当transition.to有时会导致两个屏幕同时显示时,如何调试corona sdk问题?_Iphone_Coronasdk - Fatal编程技术网

Iphone 当transition.to有时会导致两个屏幕同时显示时,如何调试corona sdk问题?

Iphone 当transition.to有时会导致两个屏幕同时显示时,如何调试corona sdk问题?,iphone,coronasdk,Iphone,Coronasdk,我有两个文件homescreen.lua和gamescreen.lua-我使用transition.to在这些屏幕之间来回转换(没有故事板)。据我所知,我已确保所有显示对象都位于每个屏幕的主组(家庭组和游戏屏幕组)下 有时,但并非总是,我会遇到这样一种情况(在iPhone上,目前还没有在模拟器上),从主屏幕过渡到游戏屏幕会使游戏屏幕位于主屏幕之上 在过去,发生这种情况时,可以通过查找未添加到主组层次结构中的某个显示对象来修复此问题。但是,我找不到任何此类下落不明的显示对象 如何调试和修复此问题

我有两个文件homescreen.lua和gamescreen.lua-我使用transition.to在这些屏幕之间来回转换(没有故事板)。据我所知,我已确保所有显示对象都位于每个屏幕的主组(家庭组和游戏屏幕组)下

有时,但并非总是,我会遇到这样一种情况(在iPhone上,目前还没有在模拟器上),从主屏幕过渡到游戏屏幕会使游戏屏幕位于主屏幕之上

在过去,发生这种情况时,可以通过查找未添加到主组层次结构中的某个显示对象来修复此问题。但是,我找不到任何此类下落不明的显示对象

如何调试和修复此问题

谢谢
Anand

我能看到的最简单的选项是为所有显示对象添加调试,并检查object.parent属性。如果一个为nil,则表示该对象没有父对象=没有显示组,瞧:)


干杯

谢谢-向所有显示对象添加调试是什么意思?抱歉,我是Corona的新手,到目前为止,我唯一做的调试就是在代码中穿插打印语句:-)我找到了这个链接--你是说使用调试器设置调试,然后在转换之前中断。指向并戳所有显示对象?有没有一种方法可以在一个命令中获得无父显示对象?没有,我的意思是,最简单的调试方法可能是:#1要将所有显示对象添加到lua表中#2,请在方便的位置,使用print语句在该表上迭代,并为每个显示对象打印object.parent属性。基本上,第一步很简单,每次创建显示对象时,都可以使用:table.insert(yourTable,yourDisplayObject)将其添加到表中,然后使用:for key,object in pairs(yourTable)do print(object.parent)在希望调试的位置结束:)(无法在一个命令中获取所有无父对象不,您必须拥有适当的数据结构才能自己访问此信息:))感谢您的详细解释,这很有帮助。我发现了这个问题,结果与对象发布无关。主屏幕上的按钮被双击,导致游戏屏幕被构建两次。但由于只有一人被释放,这导致了所描述的混乱。我通过添加一个标志使按钮幂等,现在这个问题消失了。谢谢