1.IBAction:
1> 能保证方法可以连线
2> 相当于void
2.IBOutlet:
1> 能保证属性可以连线
3.常见错误
setValue:forUndefinedKey:]: this class is not key value coding
错误原因是:连线出问题了
4.Xcode5开始的一些建议
把用于连线的一些方法和属性声明在.m文件的类扩展中
5.framecenterounds
1> frame:能修改位置和尺寸
2> center:能修改位置
3> bounds:能修改尺寸(xy一般都是0)
6.NSBundle
1> 一个NSBundle代表一个文件夹,利用NSBundle能访问对应的文件夹
2> 利用mainBundle就可以访问软件资源包中的任何资源
7.UIImageView和UIButton
1> 使用场合
* UIImageView: 如果仅仅是显示图片,不需要监听图片的点击
* UIButton: 既要显示图片,又要监听图片的点击
2> 相同:能显示图片
3> 不同点
* UIButton能处理点击事件, UIImageView不能处理点击事件
* UIButton既能显示图片, 又能显示文字
* UIButton能同时显示两张图片
* UIButton继承自UIControl, 因此默认就能处理事件
* UIImageView继承自UIView, 因此默认就不能处理事件
8.使用xib封装一个自定义view的步骤
1> 新建一个继承UIView的自定义view,假设类名叫做(ZWTAppView)
2> 新建一个ZWTAppView.xib文件来描述ZWTAppView内部的结构
3> 修改UIView的类型为ZWTAppView真是类型
4> 将内部的子控件跟ZWTAppView进行属性连线
5> ZWTAppView提供一个模型属性
6> 重写模型属性的set方法,因为在set方法中可以拿到外界传递的模型数据
7> 把模型数据拆开,分别设置数据到对应的子控件中
8> 补充:提供一个创建ZWTAppView的类方法,将读取xib文件的代码屏蔽起来