2010-02-15 94 views
2

我正在使用NavigationController,並且在切換到「橫向」模式時有一個特定的視圖不能很好地佈局。我做了一個「風景優化」版本的視圖,當用戶旋轉iPhone時,我想從Portait版本切換到橫向版本。原因是我有0 - 9的經典計算器3 x 3 + 1格式被隱藏。如何在旋轉時切換視圖

我想我可以用WillRotate做到這一點,並從NavigationController堆棧中彈出當前視圖並推送替換,但這是拋出異常。

任何想法?我希望它是動畫,並且如果可能的話,這對用戶來說不是顯而易見的。

回答

4

我的博客上講述在這裏: http://escoz.com/blog/displaying-different-views-when-iphone-is-rotated-with-monotouch/

它解釋了手機怎麼看年代旋轉事件以及如何切換視圖。希望它有幫助。代碼位於GitHub中,就像Rob指出的那樣:http://github.com/escoz/monotouch-controls/blob/master/UICatalog/RotatingViewController.cs

它目前不會執行任何額外的動畫(除了「旋轉」效果),但它不應該太難實現。如果你這麼做,請隨時貢獻給GitHub!

+1

鏈接已經改變:http://escoz.com/blog/displaying-different-views-when-iphone-is-rotated-with-monotouch/ – basarat

+0

我剛剛注意到上面的例子(代碼/項目)實際上不會旋轉到橫向視圖。導航欄實際上消失了,但是當電話轉向其側面時,該視圖不會。當改變爲橫向時,文本實際上結束了垂直(橫向)。 –

+0

@ryananderson ..我不會感到驚訝,如果這是一個新版本的iOS的大,因爲代碼只是真的老..蘋果確實改變了iOS6中viewControllers的旋轉方法。 –