不能用initWithCoder影响UITextView内容

时间:2010-02-15 06:36:48

标签: ios objective-c cocoa-touch uiview iboutlet

我正在尝试在应用启动时在我的UITextView中显示一个字符串。我的界面中有UIViewUITextView,还有一个连接到myText的插座UITextView。它似乎没有工作,我不能说为什么......

以下是相关代码:

MainView.h

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>

@interface MainView : UIView {

    IBOutlet UITextView *myText;

}
@end

MainView.m

@implementation MainView

-(id) initWithCoder:(NSCoder *)coder {


    if ((self = [super initWithCoder:coder]) != nil)
    {
        NSLog(@"initWithCoder executed");
        myText.text = @"Hello, World!";
    }

    return self;
}

@end

打印了NSLog()消息,因此我假设myText.text确实设置为@"Hello World",但这并未反映在我的UITextView中。这里挂了哪里?如果它有帮助,这是我的实际应用程序的简化版本,当我将相同的myText.text = @"Hello, World!";放入响应按钮按下的方法时,更改将反映在文本视图中。

1 个答案:

答案 0 :(得分:6)

Nib连接不一定存在于initWithCoder:中 - 只是因为此对象已解冻并不意味着笔尖中的其他所有内容都已存在。你想要awakeFromNib