使用“ccsequence”表示“dismissViewControllerAnimated”,一旦它被解除,“replaceScene”

时间:2013-04-28 17:36:27

标签: objective-c types void

天儿真好,

我有一个小问题。我想使用ccsequence替换当前正在运行的场景,只是在视图控制器被解除之后,会很高兴有类似的东西:

id test = [((AppController *) [UIApplication sharedApplication].delegate).navController dismissViewControllerAnimated:YES completion:Nil];

(id“test”以供将来在ccsequence中使用)

所以这就是问题,是否有可能使用ccsequence来解除视图控制器使用上面输入的字符串,然后用另一个替换当前运行的场景(只是想重复),但只有在视图控制器被解除之后,因为如果我试图在没有连续播放的情况下同时解除视图控制器和replaceScene,它会在iphone 4等设备上出现动画问题。

非常感谢你们的回答,非常希望能在这里得到一些帮助!

2 个答案:

答案 0 :(得分:0)

CCDirector的replaceScene方法'返回'无效。您可能希望使用以下CCNode方法来关闭控制器

-(void)onExitTransitionDidStart {

}

答案 1 :(得分:0)

所以我回答了我之前问自己的问题,我们在这里(在iPhone 4上测试,IOS 5.1.1,完全可行的例子):

[((AppController *)[UIApplication sharedApplication] .delegate).navController dismissViewControllerAnimated:YES completion:^ {[[CCDirector sharedDirector] replaceScene:[CCTransitionSlideInL transitionWithDuration:0.4f scene:[HelloWorldLayer scene]]]; }];

您可以更改当前的参数,如持续时间或场景等,无论如何它等待视图控制器将被解除,一旦它被取消,用另一个替换当前运行的场景。这种方式动画看起来更好,而不是像iphone 4那样功能强大的设备。希望它对某人有所帮助,因为我花了几天时间在这么简单的问题上找到答案。