我有一个大型应用程序。它之间有很多表和导航。我作为'NavigationBasedProject'(xcode模板)开始了一个项目。但现在我需要在应用程序的开头添加登录。所以我到目前为止做了什么: 在'didFinishLaunchingWithOptions'中我添加了:
loginViewController = [[LoginViewController alloc]init];
[loginViewController.view setFrame:CGRectMake(0, 0, 320, 480)];
[self.window.rootViewController presentModalViewController:loginViewController animated:NO];
当用户数据有效时,我会忽略登录屏幕:
[self.loginViewController dismissModalViewControllerAnimated:YES];
用户还可以从应用程序注销。然后我再次出现登录屏幕:
[self.window.rootViewController presentModalViewController:loginViewController animated:NO];
这很有效。但是登录屏幕上的文本字段仍然填充了用户输入登录的数据。我担心这里有一些记忆问题。用户登录时如何从内存中完全删除登录屏幕。我不使用GUI设计器我从代码连接所有内容。 另外我想知道登录屏幕和模态视图是个好主意吗?
答案 0 :(得分:2)
你应该使用......(我不知道你为什么要在课堂上声明它loginViewController
)
LoginViewController *loginViewController = [[LoginViewController alloc]init];
[loginViewController.view setFrame:CGRectMake(0, 0, 320, 480)];
[self.window.rootViewController presentModalViewController:loginViewController animated:NO];
[loginViewController release];
和解雇.....
[self.window.rootViewController dismissModalViewControllerAnimated:YES];
谢谢,
答案 1 :(得分:1)
你是否在演示后发布了loginViewcontroller。
loginViewController = [[LoginViewController alloc]init];
[loginViewController.view setFrame:CGRectMake(0, 0, 320, 480)];
[self.window.rootViewController presentModalViewController:loginViewController animated:NO];
[loginViewController release];