摘要:技术 高级 1.UITableview的优化方法(缓存高度,异步绘制,减少层级,hide,避免离屏渲染) 缓存高度 提前计算好 cell 的高度和布局 // 关于UITableView有两个重要的方法 - (UITableViewCell *)tableView:(UITableView *)tab
阅读全文
摘要:1.为什么代理要用weak?代理的delegate和dataSource有什么区别?block和代理的区别? A:为了避免循环引用。weak指明该对象并不负责保持delegate这个对象,delegate这个对象的销毁由外部控制。strong该对象强引用delegate,外界不能销毁delegate
阅读全文
摘要:<!-- li.li1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px 'Hannotate SC'} ol.ol1 {list-style-type: decimal} --> 设置在偏好设置里面 一 Mac操作系统(快捷方式自己上网搜索) 快捷方式:
阅读全文
摘要:第2篇 Cocoa的Foundation框架篇 2.1 算术运算函数 2.1.1 rand()函数:产生随机数 2.1.2 abs()函数/labs()函数:整数的绝对值 2.1.3 fabs()/fabsf()/fabsl()函数:浮点数的绝对值 2.1.4 floor()/floorf()/fl
阅读全文
摘要:1.请简述你对工厂方法的理解? 工厂Mycontrol,设计控件是用到工厂设计模式。类簇类似于工厂设计模式;工厂模式就是定义创建对象的接口,让子类决定实例化哪一个类。这样,类的实例化就推迟到了子类 2.UITableView有哪些优化方式? UITableView的优化主要从三个方面入手: • 提前
阅读全文
摘要:◆如何解决低内存问题? ForExample:将暂时没有展示在Window中的界面销毁,以获得足够的内存; ◆POST请求的数据类型有哪些? json、xml、二进制、参数拼接; ◆请简述你理解的面向对象思想。 所谓面向对象,举个最简单的例子,就是这样的。 A先生需要一台电脑,但是A先生对电脑配置、
阅读全文
摘要:多线程的底层实现 1.首先搞清楚是什么线程、什么是多线程2.Mach是第一个以多线程方式处理任务的系统,因此多线程的底层实现机制是基于Mach的线程3.开发中很少用Mach级的线程,因为Mach级的线程没有提供多线程的基本特征,线程之间是独立的4.开发中实现多线程的方案 * C语言的POSIX接口:
阅读全文
摘要:一、什么是NSThread NSThread是基于线程使用,轻量级的多线程编程方法(相对GCD和NSOperation),一个NSThread对象代表一个线程,需要手动管理线程的生命周期,处理线程同步等问题。 二、NSThread方法介绍 1)动态创建 NSThread * newThread =
阅读全文
摘要:1. 错误提示 2. 分析错误原因 3. 解决问题办法 一、错误提示 在我们写代码过程中可能会经常遇到这样一个错误: [objc] view plain copy print? <span style="font-size:32px;color:#ff0000;">ld: 4 duplicate s
阅读全文