initWithFrame 和 initWithCoder
2014-11-18 00:11
375 查看
当我们所写的程序里没用用Nib文件(XIB)时,用代码控制视图内容,需要调用initWithFrame去初始化
- (id)initWithFrame:(CGRect)frame
{
if (self =[superinitWithFrame:frame]) {
// 初始化代码
}
return self;
}
用于视图加载nib文件,从nib中加载对象实例时,使用 initWithCoder初始化这些实例对象
- (id)initWithCoder:(NSCoder*)coder
{
if (self =[superinitWithcoder:coder]) {
// 初始化代码
}
return self;
}
注意点:
1、初始化方法实现中,须先调用父类的该方法
2、代码创建视图的是【initWithFrame】,使用xib 和storyboard创建出来调用的是【initWithCoder】
3、代码创建视图,如果调用的是init方法,那么init方法内部一定有调用【initWithFrame】
4、重写view,自定义view,上面两个方法都要重写;
- (id)initWithFrame:(CGRect)frame
{
if (self =[superinitWithFrame:frame]) {
// 初始化代码
}
return self;
}
用于视图加载nib文件,从nib中加载对象实例时,使用 initWithCoder初始化这些实例对象
- (id)initWithCoder:(NSCoder*)coder
{
if (self =[superinitWithcoder:coder]) {
// 初始化代码
}
return self;
}
注意点:
1、初始化方法实现中,须先调用父类的该方法
2、代码创建视图的是【initWithFrame】,使用xib 和storyboard创建出来调用的是【initWithCoder】
3、代码创建视图,如果调用的是init方法,那么init方法内部一定有调用【initWithFrame】
4、重写view,自定义view,上面两个方法都要重写;
相关文章推荐
- [转载]initwithcoder和 initwithframe
- init&initWithFrame&initWithCoder
- init,initialize,initWithCoder:,initWithFrame:各方法的区别和加载顺序
- iOS之initWithFrame/loadWithNibname/initwithCoder/awakeFromNib/initWithNIbName
- init、initWithCoder、initWithFrame、initWithNib
- initWithFrame 和 initWithCoder
- initWithCoder: 与initWithFrame:的区别
- initWithFrame 和 initWithCoder的区别
- OC--init,initialize,initWithCoder:,initWithFrame:各方法的区别和加载顺序
- initWithCoder: 与initWithFrame:的区别
- initWithFrame 与initWithCoder
- iOS init/ initWithFrame/ initWithCoder/ awakeFromNib 区别
- iOS initWithFrame、initWithCoder、awakeFromNib的区别解析_0
- initWithCoder: 与initWithFrame:的区别·· ios5 dev中Quartz例子
- UI控件初始化问题:initWithFrame和initWithCoder、aweakFromNib的执行
- iOS的initWithFrame、initWithCoder、awakeFromNib
- initWithFrame 与 initWithCoder 、awakeFromNib 的方法理解笔记
- initWithCoder、awakeFromNib、initWithFrame
- UIView初始化:initWithFrame与initWithCoder的区别
- UIView的layoutSubviews,initWithFrame,initWithCoder方法