3
我有一個NSSplitView
有四個子視圖。每個子視圖都有一個包含一些文本和開/關複選框的標題,並在其下方有一個NSTableView
。用戶可以使用複選框來切換表格的可見性。當子視圖更改時,在NSSplitView中更改分隔符位置
如果該表在程序啓動時可見,並且用戶取消選中該複選框,則該表將消失。子視圖因此變得更小。
如何讓我的NSSplitView
對此作出反應(通過調整分隔線)?
我有一個NSSplitView
有四個子視圖。每個子視圖都有一個包含一些文本和開/關複選框的標題,並在其下方有一個NSTableView
。用戶可以使用複選框來切換表格的可見性。當子視圖更改時,在NSSplitView中更改分隔符位置
如果該表在程序啓動時可見,並且用戶取消選中該複選框,則該表將消失。子視圖因此變得更小。
如何讓我的NSSplitView
對此作出反應(通過調整分隔線)?
要以編程方式設置分隔符的位置,請在NSSplitView上調用-setPosition:ofDividerAtIndex:。
我想出了一個,但也許我的問題需要澄清。除了移動分隔符外,我想改變子視圖的界限。因此:用戶使表崩潰 - >子視圖的邊界相應地改變** - >通知nssplitview重新分配分隔符。我無法弄清楚如何在其內容減少時正確製作子視圖更改大小(i.c.,表格消失)。 – markjs 2013-03-26 14:50:27
您是否嘗試過在子視圖上調用'-setBounds:'?您可以使用該方法將其設置爲任意大小。你也可以通過使用'-setNeedsUpdateConstraints:'來獲得你想要的自動佈局,但是你可能不得不從你的子視圖中刪除表格 - 即使隱藏了一個視圖,約束仍然適用。 – jatoben 2013-03-26 17:42:04