Webview 适用于 iphone 但不适用于 ipad
Posted
技术标签:
【中文标题】Webview 适用于 iphone 但不适用于 ipad【英文标题】:Webview works for iphone but not for ipad 【发布时间】:2012-04-11 10:27:28 【问题描述】:下面的代码在 Iphone 上运行,我在 ipad 上加载 webview 时遇到问题,它遇到了 didFailwith 错误,(iPad 已连接)有什么帮助吗?
- (void)viewDidAppear:(BOOL)animated
NSURL *url;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
url = [NSURL URLWithString:@"http://www.google.com"];
else
url = [NSURL URLWithString:@"http://www.google.com"];
NSURLRequest *req = [NSURLRequest requestWithURL:url];
[webSurfForecast loadRequest:req];
[super viewDidAppear:YES];
-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Can't connect. Please check your internet Connection" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
【问题讨论】:
您检查过 NSError 错误变量中的实际内容吗? 嗨,Bastian,对此足够新,NSError 是:Error ipad Error Domain=WebKitErrorDomain Code=101 “操作无法完成。(WebKitErrorDomain 错误 101。)” UserInfo=0x7064c50 你真的在尝试google.com 吗?该错误听起来像是您使用的 url 没有对其进行 urlencoding。 【参考方案1】:你可以这样检查..
BOOL iPad = NO;
#ifdef UI_USER_INTERFACE_IDIOM
iPad = (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad);
#endif
if (iPad)
// iPad specific code here
else
// iPhone/iPod specific code here
【讨论】:
嗨 Anshul,这个答案与我的问题无关,我的检查设备工作的代码。以上是关于Webview 适用于 iphone 但不适用于 ipad的主要内容,如果未能解决你的问题,请参考以下文章
Android Webview Back按钮适用于模拟器,但不适用于设备
Materialise Sidenav 不适用于 iOS 或 iPhone,但适用于所有其他设备
Appdelegate 适用于 iPhone,但不适用于 iPad 版本