摘要:
1.打开终端 2.进入工程文件 3.创建podfile文件(cd touch pod file +回车 4.打开pod file文件(open pod file) 5.添加需要保存的第三方框架 6.终端输入 pod install —no-repo--update 7.等待安装完成 附上: 阅读全文
摘要:
UIApplication的作用: 1.在应用程序图标上面添加数字 1)获取UIApplication单例 UIApplication *app = [UIApplication sharedApplication]; 2)注册通知 UIUserNotificationSettings *setti 阅读全文
摘要:
UIApplication(应用程序)底层实现 1.根据principalClassName传递的类名创建UIApplication对象 2.创建UIApplication代理对象,给UIApplication对象设置代理 3.开启主运行循环,处理事件,保持程序一直运行 4.加载infor.plis 阅读全文
摘要:
1.执行main函数 2.执行UIApplication main函数 3.创建UIApplication对象(注意UIApplication是一个单例对象,[UIApplication sharedApplication]) 4.创建UIApplication代理 5.开启主运行循环(Runloo 阅读全文
摘要:
frame和bounds都市用来描述一块区域的 frame是以父控件的左上角为原点,可视范围相对于父控件 bounds:描述是可视范围在内容哪个区域,相对于内容. 可视化区域在内容中显示区域,bounds的x,y可以改(改的是内容原点的位置) 任何控件都有自己的内容,而且这个内容无限大 子控件都市相 阅读全文
摘要:
一般情况下 assign:修饰基本数据类型 weak:修饰控件,代理的时候使用 控件一般使用weak的原因是为什么呢? weak:成员变量是弱指针引用 weak:不会计数器 +1,如果对象销毁,指针也跟着清空 assign:声明一个对象,使用__unsafe_unretained修饰 assign: 阅读全文
摘要:
为什么枚举中位运算都可以使用并运算? 1. 什么是枚举中的位运算? 例如 int a = 1 << 0; //1左移0位 1*2^0 = 1; int b = 1 << 1; //1左移1位 1*2^1 = 2; int c = 1 << 2; //1左移2位 1*2^2 = 4; int d = 阅读全文
摘要:
宏:通常把是把一些常用字符串,基本便离开定义宏 1.编译时刻不同:const是在编译的时候编译,宏是在预编译的时候编译(预编译就是程序加载的时候,xcode上面会有一个进度条,显示进度,这个时候其实就是在预编译) 2.编译检测:const有编译检测,而宏没有编译检测 3.宏的好处:可以定义方法和函数 阅读全文
摘要:
1. load方法只会调用一次 2. +(void)load方法:程序一运行就会把所有的类加载进内存,调用这个方法 (表叙:只要程序一运行,就会调用类的load方法,目的:把这个类加载进内存) 3. load是只要类所在文件被引用就会被调用,而initialize是在类或者其子类的第一个方法被调用前 阅读全文
摘要:
runtime的作用有四个:1.发送消息 2.交换方法 3.动态添加方法 4.给分类添加属性 5.字典转模型 作用一:发送消息 方法调用的本质,就是让对象发送消息。 objc_msgSend,只有对象才能发送消息,因此以objc开头. 使用消息机制前提,必须导入#import <objc/messa 阅读全文