iOS 面试没有回答好的问题
1.在你的项目中,有哪些是可以优化界面流畅的经验?
这个问题,我回答的是:我忘记用过哪些,感觉界面比较简单.其实我回答的时候很紧张,也忘记怎么思考问题.回来的路上,我想了下,在我的经历中,是有做过类似的事情的.
1.1 把耗时的任务摆到子线程;
1.2 UITableViewCell的复用.在之前有些经验里面是没有进行复用,所以导致页面非常卡顿,因为每次只需的渲染cell的时候,都重新New一个;
1.3 cell高度计算.之前有做过类似像微博列表那样的页面,页面的cell高度是根据字数的多少决定的,于是我在加载完数据之后,对内容进行计算高度,然后把这个值记录着每个cell的模型中,这样达到不用每一次刷到对应的位置就可以拿到高度,从而达到不卡端的目的.另外的,可以把计算高度这个任务放到子线程去执行会效果更好.之前也看了些文章,使用YYKit+frame估算的方式会更好;
对于这个问题,其实网上写的最多的是离屏渲染这个话题,但是我在项目中也没有关注过阴影和圆角所带来的性能问题,日后需要多关注这一块.
2.对WKWebView进行过什么样的优化?UIWebView为什么会内存暴增?
这个问题,他是针对我项目文档,因为我项目写到使用内置浏览器加载H5的内容,但是这一块不是我做的,导致问题就很尴尬了....
回来之后看了篇文章,具有参考意义.https://tech.meituan.com/WebViewPerf.html