iPhone には、縦向きのみの方向ロックがあります。landscape_orientation_locked
そこで、変数をYES
またはに設定する横向きロック ボタンを UI に追加しましたNO
。次に、shouldAutorotateToInterfaceOrientation:
基本的に次のことを行います。
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
if (landscape_orientation_locked)
return (UIInterfaceOrientationIsLandscape(interfaceOrientation));
return YES;
}
これは、1 つのケースを除いて正常に機能します。iPhone を横向きにしたら、向きロック ボタンを切り替え、iPhone を縦向きに回転させて、もう一度ボタンを押します。インターフェイスの向きは、横向きから縦向きに変わりません。インターフェイスの回転をトリガーするには、iPhone を横向きにしてから縦向きにする必要があります。
だから私の質問は、どうにかしてiPhoneに現在の向きを再評価させることはできますか?