关于awakeFromNib的学习
来源:互联网 发布:芬琳漆怎么样 知乎 编辑:程序博客网 时间:2024/05/14 20:49
When a nib is loaded, the nib loader allocates and initializes all objects, then hooks up all of their outlets and actions. Because of the order in which this happens, you cannot access outlets in your initializer. You can try, but they will all be nil.
一般在UIView的子类重载该方法。
如果是从nib中加载BuleButton,方法 initWithCoder 会调用,并且先于 awakeFromNib 调用。
After all outlets and actions are connected, the nib loader sends awakeFromNib to every object in the nib. This is where you can access outlets to set up default values or do configuration in code. Example:
http://wiresareobsolete.com/wordpress/2010/03/awakefromnib/
@implementation SecondView- (id)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { // Initialization code } return self;}- (void)awakeFromNib{ [super awakeFromNib]; NSLog(@"call %s", __FUNCTION__); self.backgroundColor = [UIColor redColor];}
一般在UIView的子类重载该方法。
@implementation BlueButton- (id)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { // Initialization code } return self;}- (void)awakeFromNib{ [super awakeFromNib]; NSLog(@"call %s", __FUNCTION__); self.backgroundColor = [UIColor blueColor]; [self setTitle:@"Blue Button" forState:UIControlStateNormal];}- (id)initWithCoder:(NSCoder *)aDecoder{ NSLog(@"call %@", @"initWithCoder"); if (self = [super initWithCoder:aDecoder]) { self.titleLabel.text = @"initWithCoder"; } return self;}@end
如果是从nib中加载BuleButton,方法 initWithCoder 会调用,并且先于 awakeFromNib 调用。
1 0
- 关于awakeFromNib的学习
- 关于awakeFromNib的学习
- 关于awakeFromNib的学习
- 【iOS开发】关于awakeFromNib的使用
- awakeFromNib的调用机制
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib
- awakeFromNib和 viewDidLoad的区别
- awakeFromNib和 viewDidLoad的区别
- java常量池技术
- 未来编程趋势的12个猜想 命令行永存...
- HDU 4786
- 寒假学习 第20天 (linux 高级编程)
- 出错总有原因 之第三方库不一定可靠啊
- 关于awakeFromNib的学习
- 活着--01
- 出错总有原因 之 工程每次都重新编译
- 活着--02
- 出错总有原因 之 关于重新编译
- java特点
- 出错总有原因 之 仅有第一次编译不成功
- oracle OCP认证学习日志(2)
- Ubuntu 13.10中安装eclipse后菜单栏下拉失效