2014-12-08 28 views
3

我有一個具有特定外觀的舊應用程序,該應用程序基於具有源列表高亮顯示的基於NSCell的NSTableView。不幸的是,在優勝美地上,這增加了NSVisualEffectView在選定單元格下的活力,它以不愉快的方式打破了外觀。在源列表中禁用NSVisualEffectView NSTableView

不幸的是,我無法找到一種方法來拒絕這種行爲。 設置普通突出顯示以另一種方式打破外觀(灰色選擇而不是藍色)。

任何想法,如果有一種方法可以選擇退出10.10這種行爲?

回答

2

您需要將表格視圖外觀從NSAppearanceNameVibrantLight更改爲NSAppearanceNameAqua。如果你的目標OS X 10.8或更早版本嘗試通過直接編輯XIB文件中設置外觀:

<tableView appearanceType="aqua" ...> 

還要確保表視圖背景色設置爲Default在IB。

+0

我甚至瞄準OS X 10.7。我直接編輯XIB,但它沒有幫助。所選單元格的視覺效果視圖仍被創建。 : -/ – 2015-02-21 01:02:30

+0

嘗試封閉scrollView的設置外觀。我剛剛用10.7支持檢出了一箇舊版本的代碼來測試它。這些設置顯示沒有活力:https://www.dropbox.com/s/of33qbhgj16su7g/aquatable.png – pointum 2015-02-22 09:19:00

+0

由於某種原因,仍然不適用於我。在UI檢查器中,我仍然可以看到NSClipView下的NSVisualEffect視圖。我試圖從視圖層次結構中刪除它,但它有一個更糟糕的效果,因爲它看起來表視圖本身爲所選單元格的背景繪製白色,而沒有效果視圖它只是保持白色。感謝您的善意幫助,但我會這樣放棄它,或嘗試通過不使用表格視圖的「來源列表」類型來解決此問題。 – 2015-02-23 16:23:47