Objective-C 学习记录 - 13

1.给类属性设置数据的方法:重写set方法、传入模型

2.在自定义类时应考虑全面,一些初始化操作需要重写时应注意系统自带的其他init方法是否有效

对于控件,使用init和initWithFrame:方法时都会调用initWithFrame方法,因此重写的initWithFrame:方法可以同时响应init与initWithFrame两个方法。但使用initWithFrame方法时不会调用init方法,因此重写init方法时无法响应initWithFrame:方法

3.MVC:模型(Model)、视图(View)、控制器(Controller)编程思想

4.view的封装总结:
    4.1如果一个view内部的子控件比较多,一般会考虑自定义一个view,把它内部的子控件的创建屏蔽起来,不让外界关心
外界可以传入对应的模型数据给view,view拿到模型数据后给内部的子控件设置对应数据
    4.2封装控件的基本步骤:
    在initWithFrame:方法中添加子控件,提供便利构造方法
    在layoutSubviews方法中设置子控件的frame(一定要调用super的layoutSubviews)
    增加模型属性,在模型属性set方法中设置数据到子控件中

5.iOS开发中xib和storyboard的对比
    5.1共同点:
    都用来描述软件界面
    都用Interface Builder工具来编辑
    本质都是转换成代码去创建控件(右键Open As - Source Code可以查看源码)
    5.2不同点:
    xib用来描述局部的UI界面
    storyboard用来描述整个软件的多个界面,并能展示多个界面之间的跳转关系

6.加载xib的方法

//方法1(常用)
NSArray *views = [[NSBundle mainBundle] loadNibNamed:@“xib文件名” owner:nil options:nil];
//方法2
UINib *nib = [UINib nibWithNibName:@“xib文件名” bundle:nil];
NSArray *views = [nib instantiateWithOwner:nil options:nil];


 

猜你喜欢

转载自blog.csdn.net/XtheEpic/article/details/81516939