1.怎么解决缓存池端的问题(cell)java
回答:1.>OS中不存在缓存池的状况,由于一般咱们iOS开发,对象都是在须要的时候才会建立,面试
有种经常使用的说话叫作懒加载,还有在UITableView中通常只会建立刚开始出如今屏幕中的cell,以后都是从缓存池里取,不会在建立新对象。缓存池里最多也就一两个对象,缓存池满的这种状况通常在开发java中比较常见,java中通常把最近使用的对象先释放缓存
2>优先一处使用次数比较少的对象、优先缓存时间最长的对象(让年轻的活下来)、优先移除占用内存比较大对象动画
2.CAAnimation的层级结构spa
若是使用CAAnimation3d
1>建立CAAimation对象对象
2>设置CAAnimation对象的属性blog
3>添加CAAnimation对象到CALayer上,CALayer就会自动执行这个动画继承
keyPath=@"bounds";内存
3.UIButton与UITableView的层级结构
回答:1>继承结构
2>内部的子控件结构
4.如何渲染自定义格式字符串的UILabel
回答:1>经过NSAttributedString类
5.设置scroll view的contensize能在Viewdidload里设置吗,为何
回答:1>能
任何控制器在建立控制器View在ViewDidLoad那一刻320X480,因此,UIScrollView的contentSize是基于子控制器0 View的尺寸320X480,contentSize是在ViewDidLoad进行调整尺寸,当加入到控制器View尺寸又会被调整变小
当子控制器添加到控制器View,子控制View尺寸被调整,建立控制器的View在viewDidLoad、viewWillAppear、viewDidAppear那一刻尺寸多是不同