本文介绍了iOS - 由于解析错误,UIWebView无法正常工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在我的应用中播放Youtube视频。所以,我写了下面的代码:
NSString * embedHTML = @\
< html>< head> ; \
< style type = \text / css \> \
body {\
background-color:transparent; \
color :white; \
} \
< / style> \
< / head>< body style = \margin:0 \> \
width = \\ \\%0.0f \height = \%0.0f \>< / embed> \
< / body>< / html>;
NSString * html = [NSString stringWithFormat:embedHTML,videoURL,self.view.frame.size.width,self.view.frame.size.height];
[videoView loadHTMLString:html baseURL:nil];
videoView是一个UIWebView。这工作很好,直到后来,视图什么也没有显示。只是一个空白的白色视图。我得到这个日志:
*** WebKit丢弃异常:< NSRangeException> *** - [__ NSCFString substringToIndex:]:范围或索引超出范围
解决方案
使用:
http://www.youtube.com/v/XXXXXXX
而不是:
http://www.youtube.com/watch?v = XXXXXXX
在此处找到:
I want to play a Youtube video in my app. So, I wrote the following code
NSString *embedHTML = @"\
<html><head>\
<style type=\"text/css\">\
body {\
background-color: transparent;\
color: white;\
}\
</style>\
</head><body style=\"margin:0\">\
<embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \
width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body></html>";
NSString* html = [NSString stringWithFormat:embedHTML, videoURL, self.view.frame.size.width, self.view.frame.size.height];
[videoView loadHTMLString:html baseURL:nil];
The videoView is a UIWebView. This was working just fine until later, the view shows nothing. Just a blank white view. And I got this log:
*** WebKit discarding exception: <NSRangeException> *** -[__NSCFString substringToIndex:]: Range or index out of bounds
解决方案
Use:
http://www.youtube.com/v/XXXXXXX
instead of:
http://www.youtube.com/watch?v=XXXXXXX
Found here: https://devforums.apple.com/message/705665#705665
这篇关于iOS - 由于解析错误,UIWebView无法正常工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!
08-24 19:04