1

我正在尝试创建一个可重复使用的“选择器”。它基本上就像电话的键盘。由于我将在我的 iPhone 应用程序中大量使用它,我一直对试图让它出现感到沮丧。

它在自己的 XIB 文件中,并且有自己的 UIViewController 子类作为 FileOwner。但是,当我用以下方法实例化它时:

MonthPickerViewController *mpvc
    = [[MonthPickerViewController alloc] initWithNibName:@"MonthPicker"
                                                  bundle:nil];

屏幕上什么也没有发生。然而,它确实触发了-viewWillAppear方法等。

那么,我在代码或 InterfaceBuilder 中做错了什么会阻止我的视图出现?

4

2 回答 2

2

Are you pushing the view controller?

[[self navigationController] pushViewController:mpvc animated:YES];

Or are you adding the view controller's view as a subView of your current view?

于 2009-02-14T17:31:09.917 回答
2

首先,确保您已经在 Interface Builder 中连接了所有内容。一个简单的问题是忘记将 View 对象连接到 UIViewController 子类的视图出口。

然后,正如亚当所说,您需要实际显示视图。假设您在另一个视图控制器的代码中执行此操作,如果您只是希望新视图出现在当前视图之上,则需要类似以下内容:

[self.view addSubview:mpvc.view];

如果您使用导航控制器来堆叠视图:-

[[self navigationController] pushViewController:mpvc animated:YES];
于 2009-02-15T11:39:49.587 回答