2

我有一个 UINavigationController,在屏幕顶部有一个 UINavigationBar,在底部有一个 UIToolbar。我想让工具栏高一点。这是我的代码:

CGRect toolbarFrame = self.navigationController.toolbar.frame;
toolbarFrame.size.height += 20;
toolbarFrame.origin.y -= 20;
self.navigationController.toolbar.frame = toolbarFrame;

[self setToolbarItems:@[myButton]];
self.navigationController.toolbarHidden = NO;

这似乎应该工作并且不会产生任何错误/警告,但工具栏的大小保持在默认值。

有没有办法改变 UINavigationController 的 UIToolbar 的大小,或者我应该为此制作一个自定义 UIToolbar?

4

1 回答 1

3

我试过你的代码,只是调整你的代码顺序。它将起作用:

[self setToolbarItems:@[myButton]];
self.navigationController.toolbarHidden = NO;

CGRect toolbarFrame = self.navigationController.toolbar.frame;
toolbarFrame.size.height += 20;
toolbarFrame.origin.y -= 20;
self.navigationController.toolbar.frame = toolbarFrame;

我认为这是因为setToolbarItems会调整工具栏的外观。所以你首先需要做其他与初始化相关的事情。然后调整它的外观(比如改变它的框架。)

于 2012-11-12T03:59:49.200 回答