我正在 iphone 上测试我的应用程序,软件版本是 4.2.1。我发现从客户启动视图控制器切换到根视图控制器时发生了一些问题。代码如下:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
....
launchViewController = [[[LaunchImageTransition alloc] initWithNibName:@"LaunchView_iphone" bundle:nil controller:self.viewController animation:UIModalTransitionStyleCrossDissolve] autorelease];
self.window.rootViewController = launchViewController;
....
}
在“LaunchImageTransition.m”中:
//do some initial work
[self presentModalViewController:self.rootViewController animated:YES];
rootViewController 在“MainWindow.xib”中初始化。
当我在 iphone 模拟器上测试时,一切正常。但是在真机上测试时,发现rootViewController的viewDidAppear方法被调用了两次,而viewDidload方法被调用了一次。这导致两个相同的视图。</p>
我想知道为什么这只发生在真实设备上以及如何解决它?