2017-06-21 54 views
0

工作,我過我的iframe無處不在,它工作得很好,但在Objective-CiOS,它不UIWebView工作,這裏是我的代碼,有人可以幫我嗎?由於我的iframe不與一個UIWebView

self.webView.scrollView.scrollEnabled = NO; 

NSString *Str = [NSString stringWithFormat:@"<iframe frameborder=\"0\" width=\"359\" height=\"200\" src=\"//www.dailymotion.com/embed/video/%@\" allowfullscreen></iframe>", identifier]; 

[_webView loadHTMLString:Str baseURL:nil]; 

我的IFRAME:

<iframe frameborder="0" width="359" height="200" src="//www.dailymotion.com/embed/video/x5b4cfz" allowfullscreen></iframe> 
+0

您的寬度比某些型號的iPhone寬度寬(我不知道這是否是真正的問題),我建議您使用wkwebview而不是iwebview。 – Mozahler

回答

0

您需要將此鍵添加到您的info.plist

<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSAllowsArbitraryLoads</key> 
    <true/> 
</dict> 

,我發現是基礎URL中的主要問題,在失蹤你的代碼,所以添加此代碼與基地址@"http://www.dailymotion.com",並改變了加載html從loadHTMLStringloadData的方式總是有我更好的結果

編輯:強化你的代碼來處理的WebView的寬度@Mozahler建議是錯誤

self.webView.scrollView.scrollEnabled = NO; 

NSString *identifierTest = @"x5b4cfz"; 

NSString *Str = [NSString stringWithFormat:@"<iframe frameborder=\"0\" width=\"%@\" height=\"200\" src=\"//www.dailymotion.com/embed/video/%@\" allowfullscreen></iframe>",[NSString stringWithFormat:@"%f",self.webView.frame.size.width - 10], identifierTest]; 

NSLog([NSString stringWithFormat:@"%f",self.webView.frame.size.width - 10]); 

[_webView loadData:[Str dataUsingEncoding:NSUTF8StringEncoding] 
      MIMEType:@"text/html" textEncodingName:@"UTF-8" 
      baseURL:[[NSURL alloc] initWithString:@"http://www.dailymotion.com"]]; 

它的工作原理,你可以看到

enter image description here

希望這有助於

+0

優秀!很高興你解決了這些問題。 – Mozahler

+0

非常感謝你:) –