有问题的应用程序是一个简单的示例程序。在我的视图控制器标题中,我按钮实例化如下:
@interface ObscurelyNamedViewController : UIViewController {
UIButton *yoButton;
}
@property(nonatomic, retain) IBOutlet UIButton *yoButton;
- (IBAction)yoButtonPressed:(id)sender;
yoButtonPressed:实现如下:
[yoButton setTitle: @"I said 'yo', jammit!" forState: UIControlStateNormal];
// repeat for other button states
.
.
.
在Interface Builder中,我已将UIButton的Touch Up Inside事件连接到ObscurelyNamedViewController
的文件所有者中的yoButtonPressed方法以识别触摸。作为回报,我已将文件所有者的插座连接回yoButton,以便更新其标题。
当我构建并运行时,我没有错误,但没有任何显示,应用程序立即退出。生活在IB中唯一的另一件事是UIImage视图。我错过了什么或者我错误地连线了什么?
编辑:在控制台中,我看到以下消息:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "BradiiCaliiViewController" nib but the view outlet was not set.'
答案 0 :(得分:1)
这可能与该行动无关。你说,“没有任何东西显示,应用程序立即退出”,这意味着该动作从未发送过。
需要来自控制台的消息,但请检查
知道控制台中的消息会帮助我们给你真正的答案。
编辑:根据您的控制台消息
(对不起,但我没有在我面前的IB - 这是来自内存 - 如果我对确切位置的错误,请查看连接检查员的视口)
答案 1 :(得分:0)
从对Lou Franco的评论中回答:
BradiiCaliiViewController抱怨即使加载NIB后它也没有视图。您必须将文件所有者的视图插座连接到BradiiCaliiViewController的XIB中的视图。