2013-12-09 29 views
2

iOS 7採用了新方法drawViewHierarchyInRect:afterScreenUpdates:,該方法在視圖上調用。大多數例子似乎把它稱爲[self.view drawViewHierarchyInRect:afterScreenUpdates],但我想知道方法文檔是否說明它需要全視圖層次結構的截圖,第一個視圖有什麼相關性?我應該通過[UIApplication sharedApplication].keyWindow而不是?使用iOS 7的drawViewHierarchyInRect:afterScreenUpdate:方法,我該如何使用視圖來調用該方法?

回答

1

該文檔意味着以此視圖爲根源的完整視圖層次結構。 (而不僅僅是這個視圖的內容,而不是它的子視圖。)

如果您想獲取以關鍵窗口爲根的整個視圖層次結構的快照,那麼您的代碼是正確的。

+0

代碼的最後一部分是你指的是什麼?但是,如果我使用'self.view',它仍然有效。這是爲什麼? –

+0

是的,我的意思是使用keyWindow是你想要的,如果你想捕捉整個窗口。如果你使用'self.view',你的意思是「仍然有效」。在iPhone上的大多數視圖控制器中,'self.view'是全屏的,所以它幾乎捕捉到了你所看到的所有內容。 –

+0

你知道我怎樣才能讓它在視圖下呈現一切,而不包括我所處的視圖? – jowie

相關問題