我有一个UIWebView,可以在我的应用中打开一个网页,用户可以登录到他们的帐户。我希望应用程序做的是在用户登录其帐户后立即更改视图控制器,而不会在Webview中看到下一个网页。这是我的代码
viewDidLoad
功能:
- (void)viewDidLoad {
[super viewDidLoad];
NSString *webpage = @"myfakewebpage.com";
self.defaults = [NSUserDefaults standardUserDefaults];
[self.activityIndicator startAnimating];
[self.myWebView setHidden:YES];
self.myWebView.delegate = self;
NSURL *myURL = [NSURL URLWithString:triggerPage];
self.myRequest = [NSURLRequest requestWithURL:myURL];
[self.myWebView loadRequest:self.myRequest];
}
这就是我的webViewDidFinishLoad
函数的样子:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
if ([self.activityIndicator isAnimating] == YES) {
[self.activityIndicator stopAnimating];
[self.activityIndicator setHidden:YES];
[self.myWebView setHidden:NO];
}
[self loadViewControllerAfterAuthentication];
}
[self loadViewControllerAfterAuthentication];
调用我自己构建的函数,该函数将根据用户进行身份验证后网页的响应,通过不良的解决方法更改视图控制器。截至目前,用户可以进行身份验证,但在我的代码启动并显示新的视图控制器之前,下一个网页将加载大约半秒钟。如果有人知道如何使上述过渡变得更加顺畅,那将非常感激。