【问题标题】:Switch Between Views in Cocoa (not Cocoa Touch)在 Cocoa 中的视图之间切换(不是 Cocoa Touch)
【发布时间】:2009-07-05 23:34:21
【问题描述】:

似乎有很多关于在 Cocoa Touch 中切换视图的在线信息,但在“桌面”Cocoa 中却没有那么多。对于我正在创建的应用程序,我想知道这些方法的优缺点(如果可以,请列出这些方法),以及个人使用/建议的方法。我不认为使用不可见的边框 NSTabView 会为这个特定的应用程序解决问题,但我重视你的所有选择。我将使用侧面的一些按钮更改视图,如 iPhoto、iTunes 和一般大多数 Mac 应用程序中所示。

感谢您的帮助。

编辑:我已经研究过使用 NSViewController,但我想知道有人对如何使用它/为什么不使用它有什么建议。

【问题讨论】:

  • 您能解释一下为什么您认为 NSTabView 不能解决问题吗?这是执行此操作的标准方法。
  • 嗨 Chuck:这是因为我计划在主视图的许多不同 xib 文件之间切换。我不相信 NSTabView 可以轻松做到这一点,但如果我错了,请告诉我。

标签: cocoa views desktop


【解决方案1】:

Cathy Shive 创建了一个名为KTUIKit 的框架,该框架采用仿照 iPhoto/iTunes/etc 的单窗口应用程序设计。 KTTabViewController 类可能特别有趣,因为它提供了一种在任意数量的子视图之间切换的方法。它们提供了一种处理嵌套视图的正式方式,保持响应者链完整,并保持各种通知正确观察/不观察。还有a series of blog posts 描述了设计背后的一些原因以及这些类是如何工作的(博客文章用“XS”前缀而不是“KT”来引用它们,但它们基本上是同一回事)。

【讨论】:

    【解决方案2】:

    【讨论】:

    • @Dave DeLong 碰巧的是,我实际上在我的项目中使用了这个工具包。这是否允许视图切换,如果可以,我在哪里可以了解它?
    • IIRC,BWToolbar 允许您在 IB 中构建视图并在它们之间切换。然后我认为您可以在实际运行时通过代码隐藏工具栏,并以编程方式切换(如果您要这样做的话)
    • @Dave 我会看看这个。但是,如果它不起作用,您有其他建议吗?
    【解决方案3】:

    NSViewController 可以正常工作。我已经将它用于非常相似的情况,没有任何问题。

    【讨论】:

      猜你喜欢
      • 2010-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多