动态NSTabViewItem约束

时间:2018-04-09 09:10:48

标签: swift xcode macos

我正在NSTabView中动态添加NSTabViewItem,使用以下代码:

@IBOutlet weak var inputTabs: NSTabView!

...

let rgbInputController = ForegroundRGBInputController(nibName: NSNib.Name(rawValue: "RGBInputView"), bundle: nil)
let rgbInputItem = NSTabViewItem(identifier: "RGB")
rgbInputItem.label = "RGB"
rgbInputItem.view = rgbInputController.view
self.inputTabs!.addTabViewItem(rgbInputItem)

视图已添加,但未正确显示。

RGB tab with size issues

使用选项卡和应用程序宽度后,选项卡最终会正确显示。

RGB tab displayed correctly

我认为这是一个限制问题,但我很难解决它。

有什么建议吗?

谢谢,

1 个答案:

答案 0 :(得分:0)

您是否尝试在输入控制器视图上调用setNeedsLayout?这应该标志着它需要再次布局。您也可以尝试invalidateIntrinsicContentSize,因为视图的intrinsicContentSize可能会用于指示其初始宽度和高度。