无法在NSTextView中设置文本

时间:2010-01-20 21:39:31

标签: objective-c cocoa interface-builder desktop-application nstextview

::编辑:: 它现在有用吗?哈哈,也许我只是没有保存我最新的IB ......谁知道谁。 谢谢!

嘿,

这是我第一次玩桌面应用程序(我有iphone应用程序的经验)而且我被卡住了 - 我的文本视图不会更新以显示任何文字:

.m:
@synthesize textView;

    NSString *txt = [[[NSString alloc] initWithData:responseData encoding: NSASCIIStringEncoding] autorelease];
    NSLog(@"txt = %@", txt);
    [textView setString:txt];

.h:
    IBOutlet NSTextView *textView;
}
@property(nonatomic, retain) IBOutlet NSTextView *textView;

IB说textView - >文本视图,所以一切看起来都很好:

  • 上面的NSLog输出url资源Im fetching
  • 的内容

那么,我错过了什么?

4 个答案:

答案 0 :(得分:3)

仔细检查出口是否在IB中完成。这可能是原因(textView可能在这里nil。)

答案 1 :(得分:3)

这个setString代码在哪里被调用? IB插座可能尚未实例化。您可以通过简单的

进行检查
if (textView) {
    NSLog(@"textView is not nil);
} else {
    NSLog(@"textView is nil");
}

为了确保在调用时设置了所有内容,请确保在通过IB创建的任何对象中调用'awakeFromNib'之后。

请参阅NSNibAwaking Protocal

答案 2 :(得分:1)

你能否仔细检查像isEditable,textColor等NSTextView属性,以确保它们都没有被错误地设置。

除此之外,代码看起来还不错。

答案 3 :(得分:0)

我重新连接了IB中的所有内容,保存,重建并且有效...... = [