UIWebView显示没有数据的黑屏

问题描述 投票:-1回答:2

iOS 8.1,XCode 6.1,Storyboard和2个UIViewControllers,如下所示:

左侧的视图是主视图,右侧的视图是UIWebView,它将显示用HTML编写的帮助信息。我的问题是,当我点击其中带有“i”的蓝色圆圈时,它应该转到第二个视图控制器(它会这样做)并显示该语言的html(它不会这样做)。 ..我得到的只是一个黑屏!这是我显示html文件内容的代码:

-(void) viewWillAppear:(BOOL)animated  {

NSURL *indexURL;
NSString *sysLangCode = [[NSLocale preferredLanguages] objectAtIndex:0];

//  do we support this language?
if([sysLangCode isEqualToString:@"en"] || [sysLangCode isEqualToString:@"de"] || [sysLangCode isEqualToString:@"it"] ||
   [sysLangCode isEqualToString:@"es"] || [sysLangCode isEqualToString:@"fr"] || [sysLangCode isEqualToString:@"ja"] ||
   [sysLangCode isEqualToString:@"zh-Hant"] )  {

    indexURL = [[NSBundle mainBundle] URLForResource: [NSString stringWithFormat:@"instRST-%@", sysLangCode]
                                       withExtension:@"html"];   //  contatenate the language code to the filename
}
else
    indexURL = [[NSBundle mainBundle] URLForResource: @"instRST-en" withExtension:@"html"];  //  make 'en' the default

NSLog(@"\n\nmainBundle: %@",[NSBundle mainBundle]);

NSURLRequest *request = [NSURLRequest requestWithURL: indexURL];

NSLog(@"\n\nhtmlURL: %@",indexURL);

[self.webView loadRequest:request];

}


- (void)viewDidLoad  {

[super viewDidLoad];

[webView setDelegate:self];
}


- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error  {

NSLog(@"Failed to load with error :%@",[error debugDescription]);

}

UPDATE这是webView的连接:

我现在已经尝试了几个小时的不同场景,并且已经放弃了我自己做的事情。有人可以告诉我我做错了什么吗?

objective-c uiwebview xcode6.1 ios8.1
2个回答
1
投票

由于您使用的是故事板,因此必须使用Segue来呈现ViewController。删除按钮操作实现,按住Control键并从按钮拖动到帮助视图控制器上。将它链接到Show segue。


0
投票

我也面临同样的问题,下面的webview属性帮助我避免黑屏问题 [self.web setOpaque:NO];

© www.soinside.com 2019 - 2024. All rights reserved.