-
预编译文件 Word-Prefix.pch
我将一些最常用的头文件和一个常用的宏加到了Word-Prefix.pch中,宏都在Macros.h中,主要有一些和系统、设备、log、还有颜色相关的宏,也可自行添加。
预编译文件的作用主要是:定义一些常用的宏、可以导入经常用到的头文件,这样写代码时就不用每次都import了、可以控制log的开关,原则上是APP发布后要将log关闭;
他的缺点:把大量的头文件和宏定义放到pch里边,导致编译时间过长;这也是Apple为什么把它去掉的原因。
Xcode6以后不自带预编译文件了,添加方式见:iOS开发之Pch预编译文件的创建
-
自动布局相关的
- 自动布局遇上UIScrollView时,因为UIScrollView是根据Content自动调整大小的,所以在比较复杂的页面中你无法指定某个子视图相对于UIScrollView的右边缘、底部的距离。
解决方案:给UIScrollView添加一个View作为ContainerView,作为其他所有子视图的父View,这样复杂的子视图的约束全部相对于ContainerView,最外层只考虑ContainerView和UIScrollView的约束即可。(这个跟android中ScrollView只能包含一个子视图一个道理)。可以看一下项目中的ReciteViewController.xib。参见 xcode6中如何对scrollview进行自动布局(autolayout)
- 自动布局遇上UIScrollView时,因为UIScrollView是根据Content自动调整大小的,所以在比较复杂的页面中你无法指定某个子视图相对于UIScrollView的右边缘、底部的距离。
-
关于局部变量
局部变量一定要初始化,iOS对全局变量都会自动初始化,给你一个默认值,但是对局部变量的赋值是随机的,几天遇到了int类型,默认值为1的情况!