我不知道如何让NSPopUpButtonCell在NSTableHeaderCell中工作。我试图在这里实现解决方案:Getting duplicate header button cell in NSTableView when using NSPopUpButtonCell但似乎Swift中没有一些方法可用,特别是在headerCell上有performClickWithFrame。
我设法让弹出按钮在标题中绘制如下:
class DropDownHeaderCell: NSTableHeaderCell {
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override init(textCell aString: String) {
super.init(textCell: aString)
}
override func drawWithFrame(cellFrame: NSRect, inView controlView: NSView) {
let buttonCell = NSPopUpButtonCell(textCell: "", pullsDown: true)
buttonCell.addItemsWithTitles(["Item1", "Item2", "Item3"])
buttonCell.drawWithFrame(cellFrame, inView: controlView)
}
}
每当我尝试单击按钮时,它会选择标题单元格。如何获取它以便我的点击注册按钮而不是标题?