我有这个工作,但我不认为它是正确的,所以我只是想得到您的反馈。我正在尝试显示一个有两个按钮的屏幕-一个按钮带您进入登录屏幕,允许您注册。
我在appDelegate中测试他们是否已经登录,如果没有,我将显示signLogIN视图。
signLogIN = [[LoginOrSignUPViewController alloc] init];
signLogIN.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
signLogIN.tabBarController = mainAPPTabBarController;
signLogIN.mainWindow = window;
[window addSubview:[signLogIN view]];
//[signLogIN release];(我在appDelegate dealloc中释放-如果我在这里释放,当他们选择登录或注册时,它就会爆炸)。
我确实试过这样做:
[mainAPPTabBarController presentModalViewController:signLogIN animated:NO];但这并没有什么不同。
奇怪的是,我可以看到LoginOrSignUPViewController中的dealloc是直接调用的--为什么呢?我不知道它是从哪里调用的。
然后,我在LoginOrSignUPViewController上执行以下操作来显示登录屏幕:
[self retainCount] = 1
LoginViewController *logINVC = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
logINVC.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
logINVC.delegate = self;
logINVC.tabBarController = self.tabBarController;
[self presentModalViewController:logINVC animated:YES];
[logINVC release];
now [self retainCount] = 3 = why did it go to three????正如您所看到的,有一个委托回调signLogIn视图以关闭视图,如下所示:-
[self retainCount] = 3
[mainWindow bringSubviewToFront:tabBarController.view];
tabBarController.selectedIndex = 0;
[self.view removeFromSuperview];
[self dismissModalViewControllerAnimated:NO];
[self release];
[self retainCount] = 3 -- still 3 it never goes away所以这就是我的主要问题,LoginOrSignUPViewController永远不会消失,它只是停留在我的主视图后面。唯一有区别的代码行是[mainWindow bringSubViewToFront。有没有人有办法让LoginOrSignUPViewController消失?
非常感谢谢丽尔
发布于 2010-03-25 23:43:49
你有没有在视图控制器的viewDidLoad中尝试过:
LoginOrSignUPViewController *signLogIN = [[LoginOrSignUPViewController alloc] init];
[self presentModalViewController:signLogIN animated:NO];
[signLogIn release];https://stackoverflow.com/questions/2516492
复制相似问题