金九银十已经过去,但是也不能阻挡程序猿们跳槽,寻找一份自己满意的工作。 本人收到一位程序员前两天面试中碰到的笔试问题,整理出一份自己的见解跟答案,具体内容如下:
持续关注:逻辑教育-楚阳,持续输出各大公司iOS面试系列文章,欢迎广大程序猿找我投稿面试中碰到的面试题,我会给你一份我的见解和答案,我前面已经分享100道我招聘的面试题,加入下方iOS技术交流群624212887直接获取;
第一题:请举例至少三条以上会造成UITableView卡顿的情况
1、上方这个注释我们可以翻译为。只加载缓冲好的图片,新的下载直到scrolling end,就是上拉下拉结束以后才去进行下载图片然后刷新
2、 使用不透明视图。
3、 重复创建不必要的table cell。
4、 视图的数目过多
5、 多余的绘制工作。
6、 没有预渲染图像。
7、 阻塞主线程。
tableView卡顿解决方案:
1.最常用的就是cell的重用,注册重用标识符(每当需要显示cell的时候,都会先去缓冲池中寻找可循环利用的cell,如果没有再重新创建cell)
2.减少cell中控件的数量(view是很大的对象,创建它会消耗较多资源,并且也影响渲染的性能。所以不用的不要加上去,不适用的可以先隐藏)
3.少使用a