UIButton为UINavigationItem titleView

时间:2015-02-11 14:55:39

标签: ios swift uibutton

我试图为UIButton titleView UINavigationItem添加override func viewDidLoad() { super.viewDidLoad() let titleButton = UIButton() titleButton.titleLabel?.font = UIFont(name: "HelveticaNeue-Medium", size: 16) titleButton.titleLabel?.textAlignment = NSTextAlignment.Center; titleButton.titleLabel?.text = "My Custom Title" titleButton.titleLabel?.sizeToFit() self.navigationItem.titleView = titleButton } 。这是我的代码,但它不起作用。标题完全是空白的。

{{1}}

以下是缺失标题的屏幕截图。

screenshot

2 个答案:

答案 0 :(得分:4)

如果您使用的是Storyboard,则可以将UIButton拖到titleView。如果Interface Builder不允许您这样做,那么因为您需要先将UINavigationItem拖到导航栏,这样您就可以在内部拖动视图,例如UIButton

答案 1 :(得分:3)

要设置按钮的标题,您不应该直接设置标签的文本,您应该使用func setTitle(_ title: String?, forState state: UIControlState)配置按钮以设置特定状态的标题。

通常,您为.Normal设置标题,然后将其应用于所有状态(默认设置)。