iOS 9.0以上直接设置WKNavigationDelegate代理 func webView(_ webView: WKWebView, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { let cred = URLCredential.init(trust…
这是我遇到的问题,也许是个例,就算狗血了点吧 需求: 当前界面(mainVC)响应点击事件,传值给webviewController(webVC)其中包含网址,此时如果在webVC中对wkwebview进行懒加载并挂代理: 问题:在mainVC中调用webVC传值时,wkwebview的懒加载就开始了,,,此时如果传值中的网址为空值,webVC中的代理立马报错崩溃,没办法服务器就是会给空的,只能取消懒加载 //懒加载 -(WKWebView*)wkWebView{ //self.debugDes…
今天解决一个线上bug的时候发现的问题,如下图: 从表象来看,同样的图片,安卓手机上可以正常展示,但是到ios手机上首次进入页面就不能正常显示图片,必须手动刷新一次页面才能正常加载. 这时候,我们首先会考虑是不是ios设备的兼容问题? 于是乎,第一想到的就是问度娘,ios手机浏览器不能正常展示图片是什么原因?这么泛泛的问题,想找到你的答案如同大海捞针. 其次想到的就是在本地环境调试一下,结果测试机在本地环境看是正常的,线上环境看问题复现率100%.这时就想着看看图片资源路径有什么差异,为什么上面…
在很多App中都会使用到webview,尤其是在加载新闻内容等文章形式的数据时.因为图文混编以及不同字体格式的显示,在iOS进行编辑 和显示都是一大问题(当然,iOS中也可以用CoreText进行绘制),但是对于web端来说,一个富文本编辑器就可以完美解决这个问题.所以后台很多 时候会直接返回HTML代码拿给前端解析,这时,在客户端对HTML代码的处理就显得尤为重要了. 本文将讲解在webview加载HTML代码时,经常会遇到的图片自适应大小与文章内容自动换行问题. 示例Demo下载地址: ht…
简介 FLAnimatedImage 是 Flipboard 团队开发的在它们 App 中渲染 GIF 图片使用的库. 后来 Flipboard 将 FLAnimatedImage 开源出来供大家使用.本文章主要是介绍FLAnimatedImage框架的GIF动画加载和播放流程,旨在说明流程和主要细节点. ios原有加载缺陷分析 大家知道在 iOS 中处理过 GIF 图片, 如果通过原生系统提供的能力, 可能只有两种方式. 并且这两种方式都不是专门针对于 GIF 的解决方案,更像是一种 hack…
UIWebView是IOS内置的浏览器,可以浏览网页,打开文档  html/htm  pdf   docx  txt等格式的文件.  safari浏览器就是通过UIWebView做的. 服务器将MIME的标识符等放入传送的数据中告诉浏览器使用那种插件读取相关文件. uiwebview加载各种本地文件(通过loadData方法): UIWebView加载内容的三种方式: 1 加载本地数据文件 指定文件的MIMEType 编码格式使用@“UTF-8” 2加载html字符串(可以加载全部或者部分htm…
懒加载的好处: 1> 不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强 2> 每个属性的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合 3>只有当真正需要资源时,再去加载,节省了内存资源. 1.懒加载基本 我们知道iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能会耗尽iOS设备的内存.这些资源例如大量数据,图片,音频等等 懒加载——也称为延迟加载,说的通俗一点,就是在开发中,当程序中需要利用的资源…
图片的加载: [UIImage imageNamed:@"home"] //加载 png图片 在ios中获取一张图片只需要写图片名即可 不需要写后缀 默认都是加载.png的图片 但是因为屏幕尺寸不同 所有我们图片在加载时 系统也会做相应的处理 那么系统会如何处理呢? 下面做了讲解: 加入我们现在有这样三张图片  分别表示在不同屏幕尺寸在现实的图片 home.png   3.5 inch 非retina屏幕 home@2x.png retina屏幕 home-568h@2x.png  要…
网络图片显示大体步骤: 1.下载图片: 2.图片处理(裁剪,边框等): 3.写入磁盘: 4.从磁盘读取数据到内核缓冲区: 5.从内核缓冲区复制到用户空间(内存级别拷贝): 6.解压缩为位图(耗cpu较高): 7.如果位图数据不是字节对齐的,CoreAnimation会copy一份位图数据并进行字节对齐: 8.CoreAnimation渲染解压缩过的位图. 以上4.5.6.7.8步是在UIImageView的setImage时进行的,所以默认在主线程进行(iOS UI操作必须在主线程执行). 一些…
老规矩,国服第一博客copy王,原文链接:https://blog.csdn.net/zhengbingmei/article/details/81325325将系统变成了https访问之后,发现部分页面的布局样式发生变化控制台显示在https下不可以加载http(IE浏览器会提示是否 加载全部内容,点击加载之后可以看到正常内容) 解决方案: 1.在html文件的head标签中添加<meta http-equiv="Content-Security-Policy" content…