界面之间的几种传值方式:单例,代理,直接赋值,通知中心/广播,数据库等。
如何实现瀑布流:1.可以使用三个tableView通过实现联动滚动就可以实现瀑布流。2.在滚动视图上使用三个复用队列,当一个cell超过屏幕,不release,而是把它回收到复用队列当中,如果要创建一个cell,首先从复用队列中取出一个然后使用
异步:相对于同步来讲,单独起一个或者多线程去处理,异步处理不用堵塞当前线程来等待处理完成,而是允许后续操作,直至其它线程将处理完成,并回调通知此线程。
下拉刷新的实现方法:使用EGefresh进行,原理是利用scrollView的反弹效果把刷新的view加载到scrollView的负坐标上,是通过代理方法去触发。
单例模式:单例就是在多个对象之间共享数据,类似于全局变量,比如数据库打开一次,多个界面都可以使用
C/C++ 和OC的混编:将.m文件改为.mm文件
OC中的id解释:id是泛型指针,可以指向任何OC类型。
Copy和mutableCopy的区别:Copy是拷贝,而mutableCopy
是可变拷贝。比如能把NSString 通过 mutableCopy 变 成 NSMutableString。也就是说能把不可变的数据类型变成可变的数据类型。
Frame和bounds的区别:frame指的是:该view在父view坐标系统中的位置和大小。(参照点是父亲的坐标系统)bounds指的是:该view在本身坐标系统中 的位置和大小。(参照点是本身坐标系统)
scrollView的复用机制:滚动过程中把 scrollview 里面的超出屏幕的view放在复用池中, 在滚动过程中如果有新的 view 进来,首先从复用池中取得 view, 如果没有就新创建一个。
通知中心:通知中心是多对多的平等通信模式,主要用在多个对象之间的通讯模式,对象和对象之间通过通知的名字就可以进行关联通讯。
数据库能不能存图片:数据库是可以保存图片的,使用NSData来存,但是一般不这么做,我们只存路径,而把图片放在沙盒中。