在我的AppDelegate.m中,我使用以下代码来显示模态UIWebView(登录页面)。
@synthesize window, viewController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if (NotLoggedIn]) {
window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
viewController = [[UIViewController alloc]init];
viewController.view.frame =CGRectMake(0, 0, 320, 480);
viewController.view.backgroundColor = [UIColor whiteColor];
[window addSubview:viewController.view];
[viewController viewWillAppear:YES];
[window makeKeyAndVisible];
// continue with verification if login was successful
} else {
// show the maincontroller for the UIStoryboard
}
return YES;
}
成功登录后,UIWebView将消失,并显示故事板中的root控制器。我如何重写上面的代码?
答案 0 :(得分:0)
一种选择是从主视图控制器的viewDidLoad方法以模态方式显示您的登录页面,例如
- (void)viewDidLoad
{
[super viewDidLoad];
[self presentModalViewController:loginWebViewController animated:YES];
}
其中loginWebViewController包含您的登录页面。成功登录后,关闭模态视图控制器。
答案 1 :(得分:0)
您应该采用UIWebViewDelegate协议,并在这些委托方法中确定登录是否成功,然后关闭ModalViewController或调用UIWebView的removeFromSuperView。