問題タブ [uideviceorientation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
480 参照

ios - デバイスを表面に置いた後、アプリのUIが横向きになっているかどうかを確認することはできますか?

ユーザーがiPadを横向きモードで保持している場合、キーボードのフレームオフセットを決定しています。横向きモードでコンテンツを追加してからiPadを表面に平らに設定すると、オフセットを適切に設定できないことがわかりました。以下のコードを使用してオフセットを設定しています。

私がチェックできるUIDeviceOrientationsは次のとおりです。

(ソース:http ://developer.apple.com/library/ios/#documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html )

ユーザーがアプリを横向き(UIDeviceOrientationLandscapeLeftまたはUIDeviceOrientationLandscapeRight)に持っているかどうかを確認/確認してから、デバイスを下に置く(そうする必要がありますUIDeviceOrientationFaceUp)方法はありますか?

0 投票する
1 に答える
357 参照

objective-c - iOS5とiOS6の問題での自動回転

iOS5.0以降をサポートする必要のあるiPadアプリがあります。5.0/5.1では6.0とは異なる動作をするバグがあります。問題は、モーダルビューをプッシュするタブバーコントローラーのビューコントローラーであり、モーダルビューはnavigationControllerを介してフルスクリーンビューをプッシュします。問題は、全画面表示でiPadを回転させた場合、基になるビューコントローラー(タブバーコントローラー内の1つ)が回転しないことです。ここで、iOSバージョンの違いを分析します。

まず、問題のこのviewControllerは、shouldAutoRotateToInterfaceOrientation(YESを返します)とwillRotateToInterfaceOrientationおよびwillAnimateRotationToInterfaceOrientationを実装します。

iOS 6.0では、回転メソッド(willRotate ...&willAnimate ...)が呼び出されていないことに気付いたので、UIDeviceOrientationDidChangeNotification通知を受信するように登録し、その通知を受信した場合は2つのRotateメソッドからコードを実行します。他のメソッドは実行されていませんでした。これでiOS6.0の問題が修正されました。

問題は、5.0 / 5.1では回転メソッド(willRotate ...&willAnimate ...)が実行されているが、ビューが回転していないことです。このビューコントローラの上に「フルスクリーンビュー」が表示されず、iPadが回転すると、これら2つの方法が実行され、それに応じてビューが回転します。

助けてください。前もって感謝します。

上記以外で試したこと。

UIDeviceOrientationをチェックしてUIInterfaceOrientationに変換し、[self shouldAutorotateToInterfaceOrientation:xxx]を呼び出してみました。ビューはまだ間違って表示されます。

0 投票する
1 に答える
780 参照

opengl-es-2.0 - GLKitレンダリングとiOSデバイスの向き(上向き/下向き)

Xcode4.5.2のOpenGLゲームテンプレートに基づくプロジェクションマトリックスセットアップコードを備えたアプリがあります。関数では、およびとをクエリすることにより、update適切なz変換値を設定します。これにより、デバイスごとに向きごとに画面にレンダリングされる領域のスケールを効果的に設定できます。また、実行時にデバイスの各方向に対して正しいレンダリング比率を維持するために、から呼び出します。baseModelViewMatrix[[UIDevice currentDevice] userInterfaceIdiom]UIDeviceOrientationIsLandscape:UIDeviceOrientationIsPortrait:updatewillAnimateRotationToInterfaceOrientation:duration:

これはすべて正常に機能しますが、デバイスを上向きまたは下向きに向けると、シーンが表示されず、空のGLKViewのように見えるものしか表示されないことに気付きました。デバイスを地面に垂直な任意の方向に回転させると、シーンが期待どおりの動作に戻ります。をチェックUIDeviceOrientationIsValidInterfaceOrientation:してみましたが、必要なものは処理できるようですが、動作に違いは見られませんでした。

私の推測では、GLKitは向きの変化が検出されたときにGLKViewの自動更新を行うと思いますが、この特定の動作の原因について明確な答えは見つかりませんでした。何が起こっているのかについて何か考えはありますか?前もって感謝します。

0 投票する
1 に答える
123 参照

ios - UIDeviceOrientationDidChangeNotificationを使用しているときに、iOSデバイスが正しい位置にあると反応しません

ユーザーがデバイスの位置を変更したときにiOSデバイスの音を鳴らすアプリがあります。ユーザーにデバイスをフラット位置、ランドスケープ位置、ポートレート位置の順に配置してもらい、ユーザーが適切なタイミングでデバイスをこれらの位置に配置すると、アプリが音を発して位置を確認します。

しかし、私の問題は、デバイスが最初に平らな位置にある場合(たとえば、机の上に平らに置かれている場合)、デバイスから音が出ないことです。つまり、ユーザーがデバイスをその位置に押し込んだときにのみ音が鳴り、デバイスがすでにある位置をすぐには感知しません。アプリが最初にその位置にあるか、正しい位置に置かれている場合にアプリが音を発するように、これを修正する方法はありますか?これが私の関連コードです:

誰かが私が間違っていることを見ることができますか、そして私はこれをどのように修正できますか?

0 投票する
3 に答える
329 参照

ios - メソッドを個別に呼び出すためのヘルプが必要です:-(void)orientationChanged:(NSNotification *)iOSの注

デバイスの向きをチェックするアプリケーションを作成しています。そのため、次のコードブロックがあります。

次に、次のメソッドを呼び出します。

私がやりたいのは、別のセクションから投稿した最初のコードブロックとは別に、上記のメソッドを呼び出すことです。これは可能ですか?もしそうなら、どのように?

0 投票する
1 に答える
334 参照

ios - UIDeviceOrientation通知

変更通知を受信するには、次UIDeviceOrientationの2つのことを行う必要があります。

  1. 呼びかけるbeginGeneratingDeviceOrientationNotifications_UIDevice
  2. 通知に登録します。

これが私の質問です:

これらの通知と最初の呼び出しと登録を受信したい2つのViewControllerがありbeginGeneratingDeviceOrientationNotifications、2番目が同じことを行うとします。これで、最初のVCがアンロードされ、登録が解除され、が呼び出されますendGeneratingDeviceOrientationNotifications。最初のVCが「オフにした」場合でも、2番目のVCはこれらの通知を引き続き受信しますか?

0 投票する
2 に答える
753 参照

iphone - [self.view addSubview:_topViewController.view]; オートローテーションの問題

本当に何週間もこれのために立ち往生しています。私はECSlidingViewControllerを使用していますが、1つのビューを横向きと縦向きに回転できるようにしたいのですが、それは風景写真であり、利用可能なスペースを利用する必要がありますが、アプリの残りの部分は回転させたくありません、ただ風景にとどまります。

この手法を使用してビューに切り替えるため、自動ローテーションメソッドは呼び出されないと確信しています...

そして私のinitialviewcontrollerで...

したがって、このビューに切り替えるのではなく、単に上にスタックしているだけです。したがって、常に初期ビューコントローラの回転方法をリッスンしています...

私が何日も立ち往生していると言ったので、助けは大歓迎です...

0 投票する
3 に答える
3232 参照

ios - UIActivityViewController が閉じられた後の正しい向き

コントローラーから UIActivityViewController を提示しています。回転で問題が発生しました。いくつかのデータ共有オプション、たとえば「メール」を選択すると、メール作成ビュー コントローラーが表示されます。しかし、後でデバイスを回転させてメール コントローラーを閉じると、VC は現在の向きに回転しません。UIActivityViewController の完了ハンドラーを次のように設定しようとしました。

1)

また

2)

最初の解決策はまったく役に立ちませんでした。2 番目の解決策では、ナビゲーション バーを回転させずに残しました (高さが 12 ポイント違います)。

この場合の対処法を教えてください。