1

これが私のユーザーの iPad 要件です。2 人のユーザーが iPad を挟んでテーブルに座っています。各ユーザーは、ジェスチャを実行して画面を自分の方に回転させることで、アプリを「制御」できる必要があります。これは、iPad を持ち上げて、その回転をユーザーの方に向けるのと同じです。これに関するいくつかの質問:

1) これを行うための iOS 内のデフォルトの動作はありますか?

2)これが行われているアプリを知っているので、実際にそれを見ることができますか?

3) 最後に、アプリでこの機能を有効にするにはどうすればよいですか? この機能は、アプリ内のすべての UIViewController で利用できるはずです。

4

1 に答える 1

0

私はこのトピックの専門家ではありませんが、私の考えは次のとおりです。

アプリがデバイスのローテーションにも応答するようにしたい場合、提案はもう少し複雑になります。ただし、アプリを自分で回転させるために物理的なデバイスの回転反応をなくしたい場合は、必要な手順はいくつかあります。

  1. ビューの自動回転を停止します。iOS 6では、これはshouldAutorotate:メソッドを実装して返すのNOと同じくらい簡単で、コントローラー階層のルートsupportedInterfaceOrientationsにあるビュー コントローラーで許可する 1 つの方向のみを返すメソッドです。iOS 5以前では、View Controller 階層の最上位にある View Controllerの 1 つの方向のみを返すように を実装する必要があります。shouldAutorotateToInterfaceOrientation:YES

  2. 画面の回転に使用するジェスチャに反応するコードを追加します (ジェスチャ レコグナイザーなど)。

  3. ユーザーがジェスチャを実行したら、アプリのビュー階層の一番下にあるビューを回転させます。おそらく、 によって管理されるビューを回転させますrootViewController。方向だけでなく、このビューの新しいサイズに対処する必要があることに注意してください。回転に影響を与えるには、ビューのレイヤーにアフィン変換を適用するのが最善の方法だと思います。これは、アフィン変換に慣れていない場合に非常に役立ちます。

于 2013-01-24T02:17:44.637 に答える