1

我有一个位于视图底部的 UIToolbar。当用户在 iPad 上时,我想将工具栏添加到导航控制器的右侧,因为会有空间。

我添加了这段代码:

- (void)viewDidLoad{
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
            UIBarButtonItem *toolBarItem = [[UIBarButtonItem alloc]initWithCustomView:toolBar];
            self.navigationItem.rightBarButtonItem = toolBarItem;
        }
[super viewDidLoad];
    }

但应用程序因错误而崩溃:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Auto Layout still required after executing -layoutSubviews. UINavigationBar's implementation of -layoutSubviews needs to call super.'

我不知道为什么这是一个问题,因为我以前见过这种方法。顺便说一句,工具栏项目是在界面构建器中添加的,而不是使用按钮的 NSArray,这会有所不同吗?

谢谢!

4

1 回答 1

0

UIBarButtonItem 是工具栏中的控件之一。你确定你在做什么?我听不懂你在说什么,但似乎你正试图在 UIBarButtonItem 中添加一个工具栏。它应该是相反的, UIbarButtonItem 住在 UIToolbar

于 2012-06-28T17:34:53.563 回答