initWithNibName的初始化问题
来源:互联网 发布:怎样做淘宝代理商 编辑:程序博客网 时间:2024/06/05 17:07
在开发过程中,几次碰到在initWithNibName:nibNameOrNil方法里加载组件或者初始化一些值时,都跟没设置一样,查了一些资料才发现,原来initWithNibName:nibNameOrNil得执行顺序是这样子的
supper :
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
set param=@“supper-A”
NSLog(@“A-initNIb”);
}
viewDIdLoad
{
[super viewDidiLoad];
NSLog(@“A-view”);
NSLog(param);
}
sub:
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
set param=@“sub-B”
}
viewDIdLoad
{
[super viewDidiLoad];
NSLog(@“B-View”);
NSLog(param);
}
A-initNIb
A-view
supper-A
B-View
supper-A
B-initNIb
sub-initWithNibName: 里调用supper的initWithNibName:
superclass的initWithNibName方法结束,表示nib文件已加载,则调用sub的 viewDidLoad方法。于是应调用[subclass viewDidLoad]方法。
subclass的viewDidLoad方法又调用了supclass的viewDidLoad方法。
最后才是initWithNibName方法剩余的代码
结论,你在sub里面设置的param=sub-B,并没有起作用输出,因为,在设置之前,sub的view已经执行过了,为了避免这样可以改成
sub
viewDIdLoad
{
NSLog(@“B-View”);
NSLog(param);
[super viewDidiLoad];
}
- (void)viewDidLoad{
[selfsetWords:@” pleaseanswer the door”];
[super viewDidLoad];
}
- initWithNibName的初始化问题
- initWithNibName的初始化问题
- initWithNibName导致的初始化问题
- initWithNibName导致的初始化问题
- initWithNibName导致的初始化问题
- initwithNibName不能初始化wiew
- initwithNibName不能初始化wiew
- initWithNibName
- initWithNibName
- initWithNibName 和 loadNibNamed 的区别
- initWithNibName 和 loadNibNamed 的区别
- initWithCoder, initWithNibName, viewDidLoad的区别
- initWithNibName和loadNibNamed的区别
- iOS 初始化方法 initWithNibName、initWithCoder、awakeFromNib和 loadNibNamed说明
- loadView/viewDidLoad/initWithNibName/awakeFromNib/initWithCoder的用法
- loadView/viewDidLoad/initWithNibName/awakeFromNib/initWithCoder的用法
- loadView、viewDidLoad、initWithNibName、awakeFromNib、initWithCoder的用法
- initWithNibName与一般init的区别
- QT学习之二:Qt命令模式下建立编译的第一个例子
- 为什么2440与SDRAM地址线错两位相连?
- Android项目运行junit测试类时出现错误Internal Error (classFileParser.cpp:3494)的解决办法
- highcharts 渲染到ext4.0组件以及动态获得后台图表数据
- linux下如何安装MySQL
- initWithNibName的初始化问题
- android build flags
- openfire插件开发续二
- Alpha混合
- 关于Http Live Streaming 的一点儿记录
- spagobi系列文章-02 系统设置
- 关于DEVExpress的使用心得,有关打印操作!
- vim函数跳转技巧
- 通过 HashMap、HashSet 的源代码分析其 Hash 存储机制