Hatena::Groupiphone-dev

Ni chicha, ni limona - 平均から抜けられない僕

2009-11-30

[iPhone][Develop] UIActionSheet表示中に、アクションシートを回転させることはできない 00:14  [iPhone][Develop] UIActionSheet表示中に、アクションシートを回転させることはできない - Ni chicha, ni limona - 平均から抜けられない僕 を含むブックマーク はてなブックマーク -  [iPhone][Develop] UIActionSheet表示中に、アクションシートを回転させることはできない - Ni chicha, ni limona - 平均から抜けられない僕  [iPhone][Develop] UIActionSheet表示中に、アクションシートを回転させることはできない - Ni chicha, ni limona - 平均から抜けられない僕 のブックマークコメント


表題のとおりです。

UIActtionSheetは、たとえどんなビューに表示させていようとも回転してくれません。確認した時の状況を簡単に整理すると以下のとおりです。


showInView:に渡すビューver.振る舞い
self.window-回転には対応しない。常にホームボタン側からシートが出てくる
self.tabBarController.view2.2.1表示する時はそのときの下方向から出てくるが、表示中の回転はできない。ただし後ろのビューが回転する。
self.tabBarController.view3.1.2表示する時は、そのときの下方向から出てくるが、表示中の回転はできない。後ろのビューもシート表示中は回転せず、シートでの処理が終わってから回転する
self.view2.2.1Cancelボタンが押せなくなるので使ってはいけない。表示する時はそのときの下方向から出てくるが、表示中の回転はできない。ただし後ろのビューが回転する。
self.view3.1.2Cancelボタンが押せなくなるので使ってはいけない。表示する時はそのときの下方向から出てくるが、表示中の回転はできない。後ろのビューもシート表示中は回転せず、シートでの処理が終わってから回転する


上の注意点を、以前の記事(リンク)で出ていた問題も定性しつつ記します。


  • UITabBarControllerで表示している時にshowInView:にself.viewを指定すると、一番下のボタンが効かなくなってしまう。showInView:にはself.tabBarController.viewを渡してあげること
  • self.view.windowを渡しても、windowは回転に対応しないのであまり良い方法ではない(以前の記事ではwindowを渡す方法を紹介していました。失礼しました)

以上です。