我想了解为什么如果我尝试在init方法中为对象(如NSButton)设置值(即setAlphaValue或setTitle)没有任何反应,但如果我在awakeFromNib中调用setter函数它可以正常工作.
@interface appController : NSObject {
NSButton *btn;
}
@end;
@implementation appController
-(void)awakeFromNib {
//it works
[btn setTitle:@"My title"];
}
-(id)init {
self = [super init];
if(self){
//it doesn't works
[btn setTitle:@"My title"];
}
}
@end
Run Code Online (Sandbox Code Playgroud)
小智 42
奥特莱斯设置之后 -init和之前 -awakeFromNib.如果您想访问插座,则需要在-awakeFromNib设置插座后执行该操作或执行其他方法(例如-[NSWindowController windowDidLoad]).
加载nib文件时:
-init,-initWithFrame:或-initWithCoder:-awakeFromNib 被发送到接口对象,文件所有者和代理对象.您可以在" 资源编程指南"中阅读有关nib加载过程的更多信息.
| 归档时间: |
|
| 查看次数: |
14982 次 |
| 最近记录: |