【问题标题】:Force NSTabView to load new instance of a tab on MacOS强制 NSTabView 在 MacOS 上加载选项卡的新实例
【发布时间】:2018-08-10 22:36:46
【问题描述】:

NSTabViewController使用多个标签中,我没有意识到默认选择选项卡时,您不会给出视图的新实例。有没有办法强制始终加载视图的新实例?

【问题讨论】:

  • 为什么要使用标签视图?用户是否希望在切换选项卡时再次看到相同的视图?为什么要替换视图?
  • 不,用户不希望再次看到相同的视图。那么在它们之间切换时是否可以获得视图的新实例。如果是,请提供有关如何操作的信息。
  • 没有标签视图就不能切换视图吗?
  • 在我正在开发的应用程序中,带有工具栏类型选项卡的 NSTabController 为界面提供了一个特别有吸引力的 UI。但是,应用程序的性质要求选项卡中显示的视图是新视图,而不是恢复以前的视图。在我知道是否可以使用选项卡式控制器执行此操作之前,我不会寻找替代方案。我只是想知道这是否可行,如果可以,如何实现。
  • Hack:将默认的tabView设置为IB中不常见的项;然后应用程序选择一个默认值 - 不同,将获得一个新的。

标签: macos cocoa nstabview


【解决方案1】:

忽略为什么你会想要这样做,你应该能够在标签显示之前替换标签的视图

  • 创建一个符合<NSTabViewDelegate>的对象
  • 将其连接到标签视图的delegate 出口
  • 实现-(void)tabView:(NSTabView *)tabView willSelectTabViewItem:(NSTabViewItem *)tabViewItem 方法

【讨论】:

  • 这行得通。但是我遇到了故事板的问题。
猜你喜欢
  • 2023-03-29
  • 2022-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-22
  • 2011-04-27
相关资源
最近更新 更多