2012-01-04 5 views
0

私はアプリを書いており、2つの問題が発生しています。私は徹夜でウェブを検索してきましたが、ここの誰かが助けてくれるのか疑問に思っています。UIInterfaceOrientationを強制するには?

  1. アプリケーションが起動すると、私はそれは風景モードをデフォルトとし、それがUIInterfaceOrientationLandscapeLeftかUIInterfaceOrientationLandscapeRightであるかどうかを検出します。 .xibファイルでランドスケープモードのUIを作成しました。しかし、self.interfaceOrientationをチェックすると、ホームボタンがiPadシミュレータの左または右にあるかどうかに関係なく、常にUIInterfaceOrientationLandscapeLeftが返されます。

  2. ユーザーがiPadを2つの横向きの向きで回転させると、その変更が反映されます。簡略化した例を示すために、UIInterfaceOrientationLandscapeLeftの場合は、画面の左側に1、画面の右側に2を書いています。 UIInterfaceOrientationLandscapeRightで、画面の左側に2、画面の右側に1を書き込みます。ユーザーがデバイスを回転させるたびにiOSのどの方法で教えてくれるのですか?

ありがとうございます。あなたがそれをチェックしている

ジョー

答えて

0
  1. applicationDidFinishLaunchingまたはビューコントローラのviewDidLoadで実行している場合は、インターフェイスの向きが正しく設定されていない可能性があります。確認するには、viewWillAppearまたはviewDidAppearまで待ってください。

  2. ビューコントローラでshouldAutorotateToInterfaceOrientationを見てください。あなたはYESをサポートされている向きに戻す必要がありますので、YESを返信したい場合は、interfaceOrientationがランドスケープの場合(ランドスケープとポートレートの確認のためのヘルパー機能があります)。また、ユーザーが回転したときに知らせるdidRotateFromInterfaceOrientationもご覧ください。

+0

1.私はのNSLog文を追加することにより、shouldAutorotateToInterfaceOrientationでそれを確認しました。 NSLogを追加した後でshouldAutorotateToInterfaceOrientationから 'yes'を返さないことがあるように、おそらく最良の方法ではありません。 2.ありがとう、私はあなたが提供するリンクを確認します。 – Joe

関連する問題