面试题05-UI控件

 

  1. 怎么解决缓存池满的问题(cell)

ios中不存在缓存池满的情况,因为通常我们ios中开发,对象都是在需要的时候才会创建,有种常用的说话叫做懒加载,还有在UITableView中一般只会创建刚开始出现在屏幕中的cell,之后都是从缓存池里取,不会在创建新对象。缓存池里最多也就一两个对象,缓存池满的这种情况一般在开发java中比较常见,java中一般把最近最少使用的对象先释放。

 

  1. CAAnimation的层级结构

 

 

  1. UIButton与UITableView的层级结构

1>   继承结构

2>   内部的子控件结构

 

  1. 如何渲染自定义格式字符串的UILabel

1> 通过NSAttributedString类

 

  1. 设置scroll view的contensize能在Viewdidload里设置么,为什么

1> 能

 

  1. 按钮或者其它UIView控件的事件传递的具体过程

1> 回顾事件处理课程即可

 

  1. 控制器View的生命周期及相关函数是什么?你在开发中是如何用的?

* 1.首先判断控制器是否有视图,如果没有就调用loadView方法创建:通过storyboard或者代码;

* 2.随后调用viewDidLoad,可以进行下一步的初始化操作;只会被调用一次;

* 3.在视图显示之前调用viewWillAppear;该函数可以多次调用;

* 4.视图viewDidAppear

 

* 3.在视图显示之前调用viewWillDisappear;该函数可以多次调用;

如需要);

* 5.在布局变化前后,调用viewWill/DidLayoutSubviews处理相关信息;

posted @ 2015-11-12 11:24  E山猫  阅读(146)  评论(0编辑  收藏  举报