2011-10-20 63 views
2

我有一個主視圖A,它包含另一個視圖B. A還包含一些按鈕和控件。當設備旋轉時,A的ViewController將旋轉A,B以及按鈕和控件。我怎樣才能讓B不被旋轉?我想讓B留下來。如何保持方向更改時由ViewController旋轉一個視圖?

視圖A無法成爲B和所有其他控件的容器。如果我將B直接放到主窗口上,那麼我可以在其上使用A並保留其ViewController的旋轉功能。這是做這件事的最好方法嗎?

使事情複雜化,我使用故事板和A的ViewController,是故事板場景。

回答

0

您必須在orientationWillChange中更改視圖的位置和旋轉。

+0

你的意思是在它被ViewController旋轉之前將它旋轉到相反的方向,所以最終結果看起來是一樣的嗎?我不能這樣做,因爲視圖的任何旋轉都需要重新渲染數據,這非常耗時。我真正想要做的就是保持這種觀點不被任何方式改變。 – mahboudz

+0

它不會停留在那裏。你必須朝相反的方向旋轉,這是唯一的解決方案。 但是,旋轉視圖不應該改變視圖。這就是石英層如何工作,他們緩存everthing,甚至可以將視圖光柵化成圖像。即使你的觀點被重新渲染,也不應該浪費時間。如果是這樣,你應該優化你的渲染,而不是解決方法。 – Sulthan

+0

該視圖是一張地圖。當我旋轉它時,地圖服務會嘗試獲取顯示的新區域。我無法優化不必要地創建的網絡流量。我可以重寫整個映射服務,讓它忽略輪換,但這正是我想要阻止的。 – mahboudz

相關問題