无法在导航项 iOS8 的标题视图中居中 UILabel

Posted

技术标签:

【中文标题】无法在导航项 iOS8 的标题视图中居中 UILabel【英文标题】:Cant center UILabel in titleView of navigationItem iOS8 【发布时间】:2015-08-20 03:07:59 【问题描述】:

我无法将通过编程分配的UILabel 设置为在我的 NavigationItem 的 titleView 中居中。我什至将 NSAlignment 设置为 NSAlignmentCenter。这是它的外观图片:

如您所见.. 我没有使用正确的 UIBarButtonItem,但这不应该使文本保持居中?这是viewDidLoad中的代码:

//Set the title of navBar----------

UILabel  *navTitleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 40)];  //0 0 320 10

navTitleLabel.backgroundColor = [UIColor clearColor];
navTitleLabel.textAlignment = NSTextAlignmentCenter;
navTitleLabel.textColor=[UIColor whiteColor];
navTitleLabel.text = @"IMG";
[navTitleLabel setFont: [UIFont fontWithName:@"BullettoKilla" size:16]];

self.navigationItem.titleView = navTitleLabel;

我做错了什么?

【问题讨论】:

问题是宽度320,navigationItem自动调整旁边的项目..尝试使用较小的值.. 哇,这是一个非常愚蠢的问题。那行得通。 【参考方案1】:

正如0yeoj 所指出的,您已将项目宽度设置为 320。尝试更小的值。

【讨论】:

【参考方案2】:

试试这个 UILabel *navTitleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, 40)];

【讨论】:

以上是关于无法在导航项 iOS8 的标题视图中居中 UILabel的主要内容,如果未能解决你的问题,请参考以下文章

iOS 8:为啥 NSLayoutAttributeCenterX 无法将我的视图居中? (适用于 iOS 7)

UILabel 未在 iOS8 中显示子视图

导航菜单大小不正确

无法更改 UINavigationItem 中 UIButton 的标题

防止 UISearchController 在 IOS8 中隐藏视图导航栏

安卓电视 |如何在父视图中居中 ListRow 项 (Horizo​​ntalGridView)