6

我的工作,需要一個項目來處理:與層支持IKImageBrowserView,Z排序和其他問題

  • 有從包含IKImageBrowserView另一種觀點認爲景觀的過渡動畫;
  • 當鼠標在視圖上移動時,每個IKImageBrowserCell上都有一個懸停覆蓋圖;和
  • 具有的NSView重疊圖像瀏覽器視圖的一部分

我遇到的問題如下:

  • 的IKImageBrowserView不尊重Z排序如果沒有層-backed - > IKImageBrowserView保持最佳狀態,即使視圖位於頂部(或在其中)
  • 如果圖像瀏覽器視圖是分層支持的,則z順序問題得到解決,但是IKImageBrowserView中的自定義行爲中斷(例如懸停) - >在Mac 10.7中用於例子e,瀏覽器單元的選擇層和前景層不隨滾動視圖的「反彈」區域中的圖像而移動。

我需要layer-backing來做轉換動畫。

出於性能方面的原因,我知道Apple不建議同級視圖重疊。儘管如此,這是無法避免的。

我向蘋果公司提交了一個技術支持事件。他們已經升級到工程師,但他們也建議我提交一份錯誤報告。

有沒有人遇到過這個問題,如果有的話,你採用了哪種解決方法?


對於任何人誰好奇,示例項目在這裏https://github.com/jdbenito/nerdery。在應用程序委託中,嘗試評論/取消註釋-setWantsLayer:行。

IKImageBrowserView在層支持時開始顯示奇怪的行爲。根據操作系統的不同,這些症狀也會有所不同(例如,在Mac OS 10.6中,直到您切換到另一個選項卡並返回到IKImageBrowserView,懸停層才能工作。在Mac OS 10.8中,懸停層似乎無法在正確的單元格中呈現) 。

+0

我們遇到同樣的問題。尚未找到解決方案。來自你方的任何消息? – Raffael

+0

我對IKImageBrowserView有不愉快的體驗,並且永遠不會再嘗試使用它。花費數週的時間進行自定義,最終會明白一些簡單的事情是不可能實現的。所以我在3天內創建了自己的圖層託管控件,現在可以對其進行修改以適應我的任何需求。 – UJey

回答

0

NSView兄弟姐妹絕對允許重​​疊。前段時間我有同樣的問題,並得到了一些蘋果工程師的確認:Are layer-backed NSView siblings allowed to overlap?

關於IKImageBrowserView:我的印象是它或多或少打算用作「黑匣子」,非常像iOS上的UITableView:您可以自定義單元格和某些行爲,但最好不要混淆其內部視圖層次結構,直接向其添加子視圖。如果除了標準的記錄行爲之外你還需要什麼,你最好還是寫自己的解決方案。它不應該是絕對難以做到的,尤其是因爲您可以訪問所有縮略圖和預覽需求的Image I/O:https://developer.apple.com/library/mac/documentation/graphicsimaging/Conceptual/ImageIOGuide/imageio_source/ikpg_source.html#//apple_ref/doc/uid/TP40005462-CH218-SW3

希望這有助於您!