【问题标题】:UIToolbar not showing UIBarButtonItemUIToolbar 不显示 UIBarButtonItem
【发布时间】:2012-06-05 05:40:25
【问题描述】:

我正在使用情节提要,并且我有一个拆分视图,其中主视图是 UITableViewController。像 iPad Mail 应用程序一样,我想显示一个 UIToolbar。

我无法通过情节提要添加工具栏,但我设法以编程方式添加它。我还可以将 UILabel 添加到工具栏,但我找不到添加刷新按钮或任何类型的 UIBarButtonItem 的方法。

有什么想法吗?

- (void)viewDidLoad {
  [super viewDidLoad];

  [self.navigationController setToolbarHidden:NO];

  UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50.0f, 0.0f, 80.0f, 40.0f)];
  label.text = @"last updated...";
  label.textAlignment = UITextAlignmentCenter;
  label.font = [UIFont systemFontOfSize:13.0];
  [self.navigationController.toolbar addSubview:label];

  UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithTitle:@"Item" style:UIBarButtonItemStylePlain target:self action:@selector(action:)];
  UIBarButtonItem *item2 = [[UIBarButtonItem alloc] initWithTitle:@"Item1" style:UIBarButtonItemStyleBordered target:self action:@selector(action:)];

  NSArray *buttons = @[item1, item2, nil];
  [self.navigationController.toolbar setItems:buttons animated:NO];

【问题讨论】:

    标签: ios ipad uitoolbar


    【解决方案1】:

    感谢 Apple iOS 论坛找到答案!

    当您使用导航控制器的工具栏时,您必须在 active 视图控制器的toolbarItems 属性上设置工具栏按钮,而不是在实际导航控制器的工具栏本身上。

    来自UINavigationController docs

    显示工具栏

    导航控制器对象管理其视图中的可选工具栏 等级制度。显示时,此工具栏获取其当前的一组 来自活动视图控制器的toolbarItems 属性的项目。 当活动视图控制器发生变化时,导航控制器 更新工具栏项以匹配新的视图控制器,动画 新项目在适当的时候就位。

    例如:

    [self setToolbarItems:buttons animated:NO];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-24
      • 1970-01-01
      • 2017-11-18
      • 1970-01-01
      • 2016-07-21
      • 2019-01-23
      相关资源
      最近更新 更多