好的。我瀏覽了一些建議(在問我之前經常回答我的問題)。我沒有找到我需要的東西。NSTableView:顯示一個擴展行(動態調整大小)
我知道我做錯了什麼。我一直在iOS(UIKit)中執行此操作,但NS(Mac)中的表格與UIKit完全不同。
我有一個基於視圖的NSTableView。每行有1列。此列有一個標題(高21點)和擴大視圖(該行高420點)。標題左側有一個顯示三角形,用於切換這兩種模式。
控制器也是表數據源和委託。我有行高調用,爲視圖返回正確的值。
標題顯示正常。我將行高設置爲21,只顯示標題。這剪輯了主視圖。
當一個三角形被觸發,行擴大其高度以露出整個視圖:
足夠簡單,是嗎?
問題是B不顯示。我只是得到一個空白(但是,A被正確顯示)。項目在那裏,只是沒有被顯示。表格行是正確的高度(這可以通過使用交替行顏色來驗證)。
我試過在視圖上設置setNeedsLayout/Draw。
我可能做錯了什麼線索?
我敢打賭,我正在做一件頭腦發熱的事情,我會繼續研究這件事。
謝謝!我會檢查一下。我 - 修復它。原始視圖被分成2個子視圖(標題和正文)。我從這些子視圖中刪除了這些項目,並將它們全部放在主視圖中。他們現在顯示。很奇怪。 –
哦,有趣。我相信桌面視圖或任何顯示單元格的子幀,如果顯示被裁剪 - 在cellView中使用drawRect時,我有一些醜陋的滾動問題 - 所以我猜needsDisplay可能是有用的,但我不知道。當您將行高標記爲髒時,TableView應處理該事件。 – stevesliva
謝謝!我會一直搞亂它,看看它發生了什麼。 –