【问题标题】:iPad title bars. Navbars or toolbars?iPad 标题栏。导航栏或工具栏?
【发布时间】:2010-04-10 02:26:04
【问题描述】:

我看到一堆带有非常酷的标题栏的 iPad 应用程序。这些似乎是导航栏和工具栏的组合。他们通常有一个后退按钮和一个标题以及其他按钮。并且导航栏仅支持左侧项目、右侧项目和标题视图。而且工具栏并不真正支持后退按钮或标题。

那么如何在我的 UINavigationController 驱动的应用程序上实现这些带有许多按钮的丰富导航栏?

【问题讨论】:

标签: objective-c iphone uikit ipad


【解决方案1】:

您可以通过在您的UINavigationItem 中添加UIToolbar 来获得此效果,如下所示:

self.navigationItem.title = @"My Title";    


UIToolbar *tb = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 100, 44)];
tb.items = [NSArray arrayWithObjects:button1,button2,button3,nil];

UIBarButtonItem *tbItem = [[UIBarButtonItem alloc] initWithCustomView:tb];
self.navigationItem.rightBarButtonItem = tbItem;

[tbItem release];
[tb release];

来源:this blog, via google.

【讨论】:

  • 我发现这很有用。我发现的唯一缺点是你不能真正拥有一个半透明的导航栏,因为半透明的工具栏绘制在顶部,你会在该区域得到几乎完全不透明的东西。
  • 嗯...您可以通过在视图层次结构中稍微戳一下来删除 UIToolbar 的背景...
【解决方案2】:

这些应用程序中的大多数都在其基础级别使用 UISplitViewController,在拆分视图控制器的较大右侧详细视图顶部有一个 UIToolbar。左侧视图由 UINavigationController 提供。这为您提供了左侧工具栏中的导航控件,以及右侧的多个工具栏按钮。这些是屏幕顶部的独立条,但如果两者使用相同的样式,它们可能会合并在一起。

有关如何执行此操作的示例,您可以将源代码下载到我的通用 iPhone / iPad 应用程序Molecules 并查看 SLSMoleculeAppDelegate 内部,我在其中构建了代码中的拆分视图控制器,以及 SLSMoleculeiPadRootViewController,我在其中设置工具栏及其项目。

【讨论】:

    【解决方案3】:

    您还可以使用
    self.navigationController.navigationBarHidden = YES; 隐藏导航控制器。 但同时,在工具栏左侧添加一个返回按钮,调用popviewcontrollers

    【讨论】:

      猜你喜欢
      • 2015-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-27
      • 1970-01-01
      • 2020-10-08
      相关资源
      最近更新 更多