我有一个应用程序,它有几个不同的按钮,导致各种视图。其中一个观点将在iPhone上的Safari中打开一个网站,这就是我想要发生的事情。问题是,如果我想回到应用程序,我得到的只是一个白色屏幕,我必须双击主页按钮,关闭应用程序并重新启动它。
这可能与发布内存或视图有关吗?我不确定如何修复它,所以在safari中查看网页后我可以回到应用程序并继续其他视图。
以下是我在webViewController.m中使用的内容
#import "webViewController.h"
@interface webViewController ()
@end
@implementation webViewController
- (void)viewDidLoad
{
NSURL *url = [ [ NSURL alloc ] initWithString: @"http://www.mydomain.com" ];
[[UIApplication sharedApplication] openURL:url];
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
@end
答案 0 :(得分:0)
您可以使用webView加载此网址,然后您可以在此网页视图上设置后退按钮,无需离开应用即可返回您的应用。
UIWebView * webView =[[UIWebView alloc]init];
webView.backgroundColor = [UIColor clearColor];
[webView setFrame: CGRectMake(0, 51, 320, 398)];
NSURL *url = [NSURL URLWithString:@"http://www.mydomain.com"];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[webView setDelegate:self];
webView loadRequest:requestObj];
[self.view addSubview:webView];
您还可以使用webView的某些委托方法来了解您的网页是否已加载
-(void)webViewDidStartLoad:(UIWebView *)webView
{
}
-(void)webViewDidFinishLoad:(UIWebView *)webView
{
}
-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
}
答案 1 :(得分:0)
啊我已经弄清楚了,我已经添加了
web view.scalesPagesToFit = Yes
声明并在webview中打开网页正是我想要的方式。