- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想知道 NSTabView
何时切换到特定 View 。为此,我用我的自定义类扩展了 NSTabViewController
以便能够充当委托(delegate):
class OptionsTabViewController: NSTabViewController {
override func tabView(_ tabView: NSTabView, didSelect tabViewItem: NSTabViewItem?) {
print(tabViewItem!.identifier)
}
}
这打印了看起来像指针内存位置的内容:
Optional(0x608000100e10)
Optional(0x6080000c36b0)
我想应该可以在界面生成器中的某处设置这些标识符,但我已经尝试在标记为 identifier
的不同文本字段中编写内容,并且仍然在控制台中获取这些内存位置值。
我还使用了 print(tabViewItem!.label)
但它会在选项卡按钮中打印标签。
那么如何设置该标识符以识别选项卡 View 组件中哪个 View 处于事件状态?
最佳答案
首先,您可以这样定义您的标识符:
然后在您的代码中您可以定义一个 enum
来检查哪个是当前选定的选项卡,执行如下操作:
enum YourTabs:String {
case tab1
case tab2
case none
}
class ViewController: NSViewController, NSTabViewDelegate {
@IBOutlet var tabView:NSTabView!
public func tabView(_ tabView: NSTabView, didSelect tabViewItem: NSTabViewItem?) {
if let identifier = tabViewItem?.identifier as? String,
let currentTab = YourTabs(rawValue: identifier) {
switch currentTab {
case .tab1:
print("do something with tab1")
break
case .tab2:
print("do something with tab2")
break
default:
break
}
}
}
}
关于swift - 如何设置 NSTabViewItem 的标识符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48374804/
我创建了 NSTabViewItem 的子类,以便我可以为选项卡 View 项指定特定宽度,如 this answer 中所示。这运行良好,但是选项卡的标签未水平居中,因此文本右侧有额外的填充。如何将
Xcode 界面生成器允许我为 NSTabViewItem 设置图像。但是,当应用程序运行时,图像不会显示。我错过了什么吗? 最佳答案 我也遇到了同样的问题。这是系统中的错误。有些图像根本不显示。然后
由于我不是经验丰富的开发人员,我可能会迷失在一杯水中,但我似乎无法实现简单的覆盖来修改 NSTabView 项目的大小。 我有一个选项卡 View Controller (样式 = 工具栏) 我有一个
是否可以提供可拖动的NSTabViewItem, 基本上我想要的是,如果我按下 NSTabViewITem 标签上的 L 按钮并移动,我应该允许拖动 TabView 项目,我想为 NSTabView
我使用以下代码在 NSTabView 中动态添加 NSTabViewItem: @IBOutlet weak var inputTabs: NSTabView! ... let rgbInputCon
如果我将多个 NSTabViewItems 添加到 NSTabViewController,选项卡 View 项按钮的大小将根据标签文本的长度进行调整。每个标签的文本不同,这会导致 NSTabView
我想知道 NSTabView 何时切换到特定 View 。为此,我用我的自定义类扩展了 NSTabViewController 以便能够充当委托(delegate): class OptionsTab
我有一个应用程序,其中的选项卡是根据配置文件的项目数动态绘制的(我知道,这不是最好的主意,但这是客户的要求)。问题是选项卡无法放入 NSTabView,它们被截断了。我不知道 NSTabView 中是
当用户单击菜单(例如“客户端数据”)时,我有一个带有选项卡 View 的应用程序,我以编程方式生成一个选项卡。现在我想子类化选项卡 View ,为每个 NSTabviewitem 添加一个关闭按钮。如
我有一个 NSTabView,它具有不同样式的 NSTabViewItems。有没有一种方法可以将选项卡 Controller 分离到与外部 View Controller 不同的类中?只是为了让我的
好吧,我承认我从来没有那么擅长以编程方式操作 NSView 及其大小调整。所以,我在这里: 我们有一个标签 View 我们正在添加一个新的 NSTabViewItem 每个 NSTabViewItem
我正在快速为 mac OSX 编写一个应用程序,我想清楚地分离代码,所以我正在寻找一种方法,让 NSTabView 中的每个 NSTabViewItem 都有一个 View Controller ,而
我正在创建一个简单的 Web 浏览器并想实现选项卡。为此,我使用了 NSTabView。我基本上希望每个选项卡都有一个 WebView 来显示加载的网站。我从只有一个选项卡开始,想在创建新选项卡时添加
我想向 NSTabViewItem 添加一个带有一些文本的图标。 请帮我解决 drawLabel:inRect: 方法中的代码。 - (id)initWithCoder:(NSCoder *)deco
我是一名优秀的程序员,十分优秀!