更改左侧导航按钮文本

时间:2014-12-01 07:03:42

标签: xcode ios8 ios8.1

需要帮助来更改ios 8中左侧导航按钮的文本

尝试

self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"My Text" style:UIBarButtonItemStylePlain target:nil action:nil];

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"My Text"      style:UIBarButtonItemStyleBordered target:nil action:nil];
[[self navigationItem] setBackBarButtonItem:backButton];

请帮忙

2 个答案:

答案 0 :(得分:0)

  

需要帮助才能更改左侧导航按钮的文字

这很困惑,因为左侧导航按钮和后退按钮是两个完全不同的东西。所以你“左导航按钮”,但你设置的是后退按钮。因此,无法确定你真正想要做什么。而且,左按钮和后退按钮相互冲突 - 默认情况下,它们不会同时出现。所以你也必须要小心。

我将在这个答案中假设,虽然你左侧导航按钮,但你不是这个意思 - 你的意思是后退按钮。并且顶视图控制器没有左按钮。

假设是这种情况,这里要记住的是,当显示后退按钮时,它不是当前视图控制器的导航项,其后退按钮是这样,但是堆栈下面的视图控制器。也就是说,后退按钮属于后退项目的导航项目。

因此,这是需要修改其导航项的后退项的视图控制器,它需要在之前将另一个视图控制器压入堆栈 - 优选更早,在它自己viewDidLoad

因此,如果在正确的视图控制器的viewDidLoad 中运行,此代码(来自我的书)将会起作用:

UIBarButtonItem* b =
    [[UIBarButtonItem alloc] initWithTitle:@"Go Back"
      style:UIBarButtonItemStylePlain target:nil action:nil];
self.navigationItem.backBarButtonItem = b;

但是,当然如果你的意思是左栏按钮项目,那么就忘了这一切。如果你的意思是左栏按钮项,那么问题不是你有错误的视图控制器,而是你有错误的栏按钮项目!

答案 1 :(得分:0)

    UIButton *buttonLeft = [UIButton buttonWithType:UIButtonTypeCustom];
    [buttonLeft addTarget:self action:@selector(buttonLeftAction) forControlEvents:UIControlEventTouchUpInside];
    [buttonLeft setFrame:CGRectMake(0, 0, 70, 20)];
    [buttonLeft setTitle:@"YourTitle" forState:UIControlStateNormal];
    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithCustomView:buttonLeft];

尝试以上代码。