如何才能獲得關於關鍵窗口的UIView
的Z順序?UIView的iOS Z順序
層次深度對我沒有興趣。我不在乎關鍵窗口有多少個超級視圖。
只是想知道哪些視圖「靠近」用戶。
我已經試過各種可能性,如
hittesting
view.layer.depth
post-order DFS (Or some sort of variation)
但由此產生的答案是在問候它的「環境」,而不是在屏幕上查看的實際「繪製順序」。
這是可能的合理的方式嗎?
如何才能獲得關於關鍵窗口的UIView
的Z順序?UIView的iOS Z順序
層次深度對我沒有興趣。我不在乎關鍵窗口有多少個超級視圖。
只是想知道哪些視圖「靠近」用戶。
我已經試過各種可能性,如
hittesting
view.layer.depth
post-order DFS (Or some sort of variation)
但由此產生的答案是在問候它的「環境」,而不是在屏幕上查看的實際「繪製順序」。
這是可能的合理的方式嗎?
UIView兄弟姐妹按照將其添加到其超級視圖的順序進行堆疊。
您可以用下面的代碼檢查:
景觀之上: [parentView.subviews lastObject];
查看在底部: [parentView.subviews objectAtIndex:0];
如果你想有一個觀點出現在所有其他視圖前:
[parentView bringSubviewToFront:view]
其中視圖出現在子視圖中的順序數組確定他們的Z順序。如果在使用addSubView()查看B之前添加視圖A,則視圖B將位於視圖A之上。
我知道這一點。但它並不能保證一個人在層次結構中的表親觀點上高於另一個。 –
此外,視圖可以清晰,底層視圖可見。我只對用戶實際可見的視圖感興趣。我不是創建視圖繼承人achy。我正在檢查視圖層次結構。 –