ExpandSearchPageController

ExpandSearchPageController

我正在使用iPhone应用程序,正在 Controller 中获得对IBOutlet字段的(空)引用。我有一个UIViewController子类,该子类在XIB中设置为文件的所有者。我有一组连接到 Controller 的UI元素。从NIB加载并尝试在这些UI元素上设置属性后,我发现它们为(空)。为了澄清,一些代码:

ExpandSearchPageController.h:

@interface ExpandSearchPageController : UIViewController
{
  IBOutlet UITextView * completeMessageView;
}

-(void)checkTextField;

@property (nonatomic, retain) IBOutlet UITextView * completeMessageView;

ExpandSearchPageController.m:
@implementation ExpandSearchPageController

@synthesize completeMessageView;

-(void)checkTextField
{
  NSLog(@"text field: %@",completeMessageView);
}

ExpandSearchPageController设置为ExpandSearchPage.xib的文件所有者。 ExpandSearchPage.xib的UITextView连接到completeMessageView。

当我打电话
ExpandSearchPageController * searchExpanderPage = [[ExpandSearchPageController alloc] initWithNibName:@"ExpandSearchPage" bundle:[NSBundle mainBundle]];

[searchExpanderPage checkTextField];

结果是
"text field: (null)"

最佳答案

在看了一个多小时的问题之后,我想问这个问题使我想出了:

我只是更改了代码,以在显示 View 之后检查文本框...现在所有实例都已实例化。

想象一下:UI元素直到您显示它们才被实例化!

08-05 02:56