更改导航栏中标题视图的大小

4

在导航栏中,是否能够更改标题视图的大小?有些我想使用的标题在当前尺寸下无法完全显示,因此我想水平扩展标题视图。目前,我尝试了以下方法:

UIView *testView = [[UIView alloc] initWithFrame:CGRectMake(0,0,500,32)];
[testView setBackgroundColor:[UIColor redColor]];
self.navigationItem.titleView = testView;

不管我把宽度设得多大,它仍然不能扩展到一定点以外。这就是我所看到的: 输入图像描述 有没有什么办法可以解决这个问题?感谢您的帮助。
1个回答

1
据我所知,目前没有简单的方法来实现此操作。但是你可以使用UINavigationController的方法。
- (instancetype)initWithNavigationBarClass:(Class)navigationBarClass toolbarClass:(Class)toolbarClass;

创建带有自定义UINavigationBar的UINavigationController。

使用此初始化程序使导航控制器使用您的自定义栏类。将navigationBarClass传递为nil将获取UINavigationBar,将toolbarClass传递为nil将获取UIToolbar。参数必须是各自UIKit类的子类。


谢谢您的回答,Avt。我应该覆盖自定义导航栏中的哪些内容以扩展标题视图? - Connor
@connor 很难说。我自己从未做过同样的事情。您可以尝试将当前代码粘贴到 customNavigationBar 的 - (void)pushNavigationItem:(UINavigationItem *)item animated:(BOOL)animated; 方法中。 - Avt
@connor 如果这个答案有用,请接受它。 - Avt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接