【问题标题】:Can't add a rightBarButtonItem to a UIViewController无法将 rightBarButtonItem 添加到 UIViewController
【发布时间】:2011-09-05 13:34:04
【问题描述】:

我有下一个代码:

- (id) initWith...{
  if (self == [super initWithNibName:@"EmptyViewController"
     bundle:[NSBundle mainBundle]]){ 
     ...

    back_btn = [[UIBarButtonItem alloc] initWithTitle:@"Back" 
                                                style:UIBarButtonItemStyleBordered 
                                               target:self
                                               action:@selector(backParentViewController)];
    self.navigationItem.leftBarButtonItem = back_btn;
    update_btn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh
                                                               target:self action:@selector(refresh)];
    self.navigationItem.rightBarButtonItem = update_btn;
    self.title = [utils LabelFromKey:@"commons.nav-button.reports"];
        self.navigationItem.title = [utils LabelFromKey:@"commons.nav-button.reports"];
}

但是 rightBarButton 是不可见的。

我尝试将代码移动到 viewDidLoad,并将按钮设置为 navigationController.navigationItem 但不显示按钮

self.navigationController.navigationItem.rightBarButtonItem = update_btn;

有什么建议吗?

谢谢

【问题讨论】:

  • 你导航控制器吗?

标签: xcode xcode4 uinavigationcontroller uinavigationitem rightbarbuttonitem


【解决方案1】:

删除 ivar update_btn。使用

在viewDidLoad 开始分配
UIBarButtonItem *update_btn = [[UIBarButtonItem alloc] init...;

用这个语句分配项目:

self.navigationItem.rightBarButtonItem = update_btn;
[update_btn release];

让我知道这是否适合你。

【讨论】:

    【解决方案2】:

    抱歉耽搁了,要使其正常工作,您必须在方法 viewDidAppear 中应用 UIBarButtonItem

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      • 2019-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多