但是,由于某种原因,图像在离线时未加载.它们似乎是从网站上加载的.
过去一切都很好,我注意到这个问题只会影响维基百科更新移动网站格式后创建的新网页.
这很奇怪,因为如果我在计算机上打开webarchive,而在iOS中没有打开webarchive,则会在离线时加载图像.
知道这里发生了什么吗?
我正在使用以下代码加载webarchive:
Nsstring *filename=[[Nsstring alloc] initWithFormat:@"%@",appDelegate.urlname];Nsstring *HTMLPath=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:filename];NSURL *url=[NSURL URLWithString:[HTMLPath lastPathComponent] relativeToURL:[NSURL fileURLWithPath:[HTMLPath stringByDeletingLastPathComponent] isDirectory:YES]];[self.myWebVIEw loadRequest:[NSURLRequest requestWithURL:url]];
更新:我还发现在移动维基百科网站上加载移动版Safari中的webarchive会导致iOS 7崩溃.
这是一个导致问题的新webarchive的链接,以及维基百科的旧版本中的一个正常工作.我已将文件扩展名更改为“pList”,因此可以轻松编辑它们.改回“webarchive”进行测试.
(新)https://dl.dropboxusercontent.com/u/20616325/Badger%20%28NEW%29.plist
(旧)https://dl.dropboxusercontent.com/u/20616325/Badger%20%28OLD%29.plist
解决方法 Ilnar是对的.扩展他的答案,iOS7 srcset support不支持属性srcset.这很可能是导致您看到崩溃的原因.Srcset用于在一个图像标记中为不同的设备大小提供多个图像链接.开头有JavaScript,在新的Image()中找到图像return srcset’的正确src;
新的webarchive使用此标记提供3个图像的链接. olD webarchive只是使用标记指向URL.
在iOS8中应该支持Srcset,但看起来维基百科使用1.5x和2x的分辨率标签.
`srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/82/TaxIDea_taxus_%28Point_Reyes%2C_2007%29.jpg/270px-TaxIDea_taxus_%28Point_Reyes%2C_2007%29.jpg 1.5x,//upload.wikimedia.org/wikipedia/commons/thumb/8/82/TaxIDea_taxus_%28Point_Reyes%2C_2007%29.jpg/360px-TaxIDea_taxus_%28Point_Reyes%2C_2007%29.jpg 2x
Webkit(Safari的骨干)仅支持整数(1x,2x,3x).所以这可能导致iOS 8上的加载失败.
总结以上是内存溢出为你收集整理的ios – 维基百科图像未从UIWebView中的webarchive加载全部内容,希望文章能够帮你解决ios – 维基百科图像未从UIWebView中的webarchive加载所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)