【问题标题】:Fixed top menu bar固定顶部菜单栏
【发布时间】:2014-03-03 09:42:08
【问题描述】:

我想在 iOS 应用中实现一个顶部菜单栏。我希望它显示在每个视图控制器中。除了使用导航控制器中的栏之外,最好的方法是什么?

【问题讨论】:

  • 如果你想在每个视图控制器中使用它而不是使用标签栏控制器而不是顶部菜单栏。

标签: ios menu


【解决方案1】:

iOS 的内置功能允许您在许多视图控制器之间保持 UI。目前,UITabBarController 和 UISplitViewController 在底部或左侧包含视图,并在链接显示的其他视图控制器之间持续存在。 UINavigationcontroller 在顶部有一个视图。如果你想要别的东西,那么没有标准的 iOS 方式来做这件事,但这里有 3 个选项。

  1. 创建一个主视图控制器类,所有类都从该类继承。通过单例重新创建您想要保留的 ui,并在分配主类时添加为子视图。
  2. 顶栏可以作为子视图添加到 UINavigationController。子类 uinavigationcontroller,你可以做[self.view addSubview:view]
  3. 或者将ui添加到应用程序的窗口中。这可以在应用程序的任何地方完成,您只需UIWindow* keyWindow = [[UIApplication sharedApplication] keyWindow]; [keyWindow addSubview:view];

我建议使用选项 2,选项 1 对于如此简单的事情来说太乏味了,选项 3 将在整个应用程序中持续存在,选项 2 将您添加的视图与 UINavigationController 相关联,因此只有视图控制器导航控制器会受到影响,同样,如果您删除导航控制器,内容也会随之而来。

【讨论】:

    猜你喜欢
    • 2015-02-04
    • 2012-10-27
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    • 2014-07-11
    相关资源
    最近更新 更多