如何设置正确的导航栏按钮标题

10

我该如何以编程的方式设置右侧导航栏按钮的标题?我尝试了

[self.navigationItem.rightBarButtonItem setTitle:@"Test"];

我还尝试创建一个按钮的出口,然后试图为其分配一个值。

self.rightBarButton.titleLabel.text = @"Test";
6个回答

9

试试这个:

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Test" style:UIBarButtonItemStylePlain target:target action:action];

7

如果您要使用Swift,请使用以下内容:

self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "Title", style: UIBarButtonItemStyle.Plain, target: self, action: Selector("methodName"))

使用以下方法设置标题的颜色:

self.navigationItem.rightBarButtonItem?.tintColor = UIColor.whiteColor()

4

请尝试这个方法,它是有效的:

    self.navigationItem.rightBarButtonItem.title = @"New Title";

1
这是针对Swift 3的简单选项:

let rightButton = self.editButtonItem
rightButton.title = "My Button"
self.navigationItem.rightBarButtonItem = rightButton

0

单个导航按钮

self.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(yourFunctionWithObjcKeyword))

多个导航按钮

let add = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(yourFunctionWithObjcKeyword))

let edit = UIBarButtonItem(barButtonSystemItem: .edit, target: self, action: #selector(yourFunctionWithObjcKeyword))

self.navigationItem.rightBarButtonItems = [add, edit]

注意:您必须将您的控制器嵌入UINavigationController中,以使上述代码正常工作。对于UITableViewController和UICollectionViewController,此代码不起作用。

0

这适用于Swift 3:

navigationItem.rightBarButtonItem?.title = "Test"

但按钮必须是自定义类型,否则它不起作用。


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