如何将UILabel放置在导航栏的中心

问题描述 投票:11回答:3

如何将UILabel放置在XCode 6的导航栏中心?有可能吗?我可以放在这里,例如,UIButton,但无法放置UILabel。如果不是,我该怎么办?放置一个带有适当文字的UIButton并使其不可点击?

提前致谢。

ios xcode uibutton interface-builder uilabel
3个回答
18
投票

Xcode 6中,如果你想首先在UINavigationBar中放置一个标签,你必须在那里放一个UIView然后把UILabel放在UIView里面(这是来自故事板btw)。

如果你不把UIView放在第一位,那么UILabel永远不会被放到UINavigationBar上。


8
投票

创建一个UIView并添加UILabel作为它的子视图,然后将你的NavigationItem的titleView设置为先前创建的UIView。

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 150, 40)];
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 150, 40)];
label.text = @"Hello";
label.textAlignment = NSTextAlignmentCenter;
[view addSubview:label];
self.navigationItem.titleView = view;

注意:不要忘记设置自己的帧值以获得更好的结果。


0
投票

只要确保你尝试viewWillLayoutSubviews方法而不是viewDidLoad,这对我有用。干杯!

© www.soinside.com 2019 - 2024. All rights reserved.