問題タブ [screen-orientation]
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.
ipad - 縦向きと横向きの間の iPad ビューポートの問題
iPadに表示されるWebページがあります。ビューポートにこのメタを追加しました:
縦向きでも問題なく動作し、iPad が横向きモードになると問題なく動作します。問題は、横向きから縦向きに戻ると、ページが伸びすぎて、ページの一部が縦向きモードで画面からはみ出すことです。通常の表示に戻すには、画面をダブルタップする必要があります。
次に試しました:
しかし、ポートレート モードでは十分な幅がなく、アイコン/テキストが 1 行だけであるべきときに 2 行に折り返されます。全部まとまります。助言がありますか?
android - ビューを縦向きモードに回転するには?
マニフェスト ファイルで向きが横向きにハード コードされているアプリケーションがあります。ユーザーがアプリケーションのオプション/メニューを押すと、アプリケーションは (クリックされたオプションに応じて) グリッドビュー/リストビューを起動します。これは、横向きモードで非常にうまく機能します。ただし、ユーザーがアプリケーションを縦向きモードで表示しているときに UI を変更したい場合、問題が発生します。携帯電話のモードに関係なく、UI は常に横向きに表示されます。(マニフェスト ファイルの設定のため)。回転アニメーション (90 度) を実行しようとしましたが、問題が発生します。リスト ビューの場合、アニメーション後にスクロールが正しく機能しません。また、グリッド ビューの場合、グリッド ビュー要素のクリックは、新しいレイアウト (回転アニメーションの後) ではなく、古いレイアウト (横向き) に対応します。以前にこの問題に遭遇した人はいますか? どんな提案でも大歓迎です。
android - 向きによってスタイルを変える
縦向きのスタイルと横向きのスタイルを定義して、デバイスを回転させたときに変更が自動的に行われるようにするか、プログラムで行う必要がありますか?
ありがとう
android - Android - 画面の向きを処理する
私は現在、画面の向きに応じて動作が異なる Android アプリケーションに取り組んでいます。
getWindowManager().getDefaultDisplay().getRotation() を使用して onCreate() メソッドで画面の向きを取得し、そこから管理しています。
基本的に、私の問題は、向きを制御する必要があることです。横向きモードでは、ユーザーが決定すると、アプリケーションは縦向きモードに切り替える必要があり、その状態を維持しますが、使用が縦向きモードになり、次に横向きになるまでのみです。
私は setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) を使用して、横向きのときに向きを変更しています。問題は、これを使用すると、ランドスケープに戻れないことです。onCreate() で setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED) を使用すると、問題は数秒後に横向きモードに切り替わることです (画面がまだ横向きであるため)。
これを管理する他の方法はありますか?基本的に、listner を使用して画面の向きの変更をキャッチする方法はありますか (または、ビューが縦向きモードでロックされている場合は呼び出されないため、onCreate 以外の場所)。私はそれについて何も見つけることができません...
どんなアイデアでも大歓迎です!
ありがとう!
android - onConfigurationChanged()を介して向きを変更しますか?
少しナイーブに聞こえたらごめんなさい...アクティビティでは、ボタンが1つとtextViewが4つあります。
この投稿によると、マニフェストファイルを変更し、onConfigurationChanged()をオーバーライドしました。希望のレイアウトが得られます。しかし、ボタンはonClickListenerを失い、textViewsはテキストを最初にxmlで設定したものに変更します。
onCreate()でボタンに設定されているボタンにonClickListenerを割り当てるにはどうすればよいですか。また、setText( "anything")は、各textViewのonCreate()内で呼び出されます。onConfigurationChanged()を使用する正しい方法は何ですか?すべてをやり直さなければならないようですから?
前もって感謝します。
iphone - iOS:マルチタスクバーからアプリを再開するときに向きを維持するにはどうすればよいですか?
問題:
UIInterfaceOrientationLandscapeRight方向でアプリをバックグラウンドに送信した場合、マルチタスクバーからアプリケーションを再開すると、表示されるスナップショットとビューの両方で、方向はデフォルトのUIInterfaceOrientationLandscapeLeftになります。ビューは、一時停止される前に最後の既知の方向であるUIInterfaceOrientationLandscapeRightに回転して戻ることにより、すぐに方向を変えます。
既知の量:
- アプリは2つのInterfaceOrientationsをサポートしています:UIInterfaceOrientationLandscapeLeftとUIInterfaceOrientationLandscapeRight
- アプリは、ShouldAutoRotateToInterfaceOrientationをオーバーライドするすべてのビューコントローラーの自動回転を利用し、方向がサポートされているもののいずれかである場合はyesを返します
- 両方の方向は、UISupportedInterfaceOrientationsキーの下のInfo.plist内で定義されます
- アプリがバックグラウンドに送信されると、サポートされている向きの自動スナップショットが取得されて保存されます
- 踏み台からアプリを再開すると期待どおりに機能し、向きはバックグラウンドに送信されたときと同じになります。
観察された行動:
マルチタスクバーからアプリを再開すると、アプリは2つの方向通知を受け取ります。これらの通知は、オーバーライドされたshouldAutoRotateToInterfaceOrientationによってそれぞれ評価されます。最初にUIInterfaceOrientationLandscapeLeft、次にUIInterfaceOrientationLandscapeRight。
推測される結果:
マルチタスクバーからアプリを再開するときの向きは、一時停止したときと同じです。したがって、UIInterfaceOrientationLandscapeRightモードの場合、同じ方向で再開することを期待します。
android - 一部の画面サイズで両方の向きをサポートし、他の画面サイズではサポートできないということは可能ですか?
私のアプリでは、現在、一部のアクティビティで縦向きのみをサポートしています。これは、ほとんどの電話ユーザーがほとんどの場合、縦向きを使用している (そしてデバイスを片手で持っている) と想定しているためです。
ただし、新しい Honeycomb タブレットでは、ユーザーが横向きを使用する頻度がはるかに高くなる可能性が高いと思われるため、より多くのアクティビティで両方の向きをサポートしたいと考えています.
ただし、小さい画面サイズ (QVGA まで) に戻って横向きのレイアウトを追加する必要はありません。他人。
android - 他のアプリの画面の向きを設定するには?
次の行を使用して、アプリケーションで方向を設定できます..
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
(アプリケーション内だけでなく)すべての画面に向きを設定したい場合。これどうやってするの?どんな助けでも。
前もって感謝します
android - Android: onRetainNonConfigurationInstance() と異なるレイアウトでの向きの変更
ユーザーが横向きモードと縦向きモードのどちらで保持しているかに応じて、2 つのかなり異なるレイアウトを持つアクティビティがあります。
onRetainNonConfigurationInstance() では、多くの情報を保存し、存在する場合は onCreate() で抽出して、ユーザー データを復元します。
電話が現在縦向きモードか横向きモードかを判断する方法があります。getWindowManager().getDefaultDisplay().getWidth() が getWindowManager().getDefaultDisplay().getHeight() より大きい場合は横向きです.
私の縦向きレイアウト xml ファイルには、横向きレイアウト xml ファイルには存在しない画像ビューがいくつかあります。onCreate() では、縦向きかどうかを確認し、縦向きであれば初期化して変更します。横向きモードの場合は、そうしません。
これは、縦向きから横向きへの切り替えにはすべて正常に機能しますが、縦向きに戻すと、縦向きモードでのみ実行されるコードで null ポインター例外が発生し、ビュー要素が見つかりません。
スタックトレース:
私が間違っていることを知っている人はいますか?
ありがとう!!r3mo
編集:
問題を引き起こす Popup.java セクション:
縦向きのレイアウト ファイルにはこれらの「スペーサー」が含まれていますが、横向きのバージョンには含まれていません。これは、onRetainNonConfigurationInstance() を使用するときに方向が変更され、さまざまなレイアウトが処理される方法ですか? ポートレートからランドスケープに移行するとコードはすべて正常に動作しますが、ポートレートに戻ると NullPointerException が発生します。
編集2:
isInPortrait() は正常に動作しているようですが、これを変更します。ビューを非表示にするだけではない理由は、レイアウトの構造がランドスケープで大きく異なるためです。明らかに、この横向きのレイアウトは正常に機能しています。縦向きから横向きに移動してから縦向きに戻すと、エラーが発生します。
すべての助けに感謝します!
編集3:
これを行う方法を変更して、layout-port/ と layout-land/ に同じレイアウト ファイルを配置し、横長の View.GONE で不要なビュー要素を作成しました。この問題について意見を求めることは確かに良いことです。ランドスケープとポートレートでまったく異なるレイアウトを使用できるのは、Android の非常に強力な機能のようです。
ありがとう!
android - Androidで向きをすばやく切り替えるにはどうすればよいですか?
起動時に非常に大きなファイルをロードする必要があるAndroidアプリがあります。向きを切り替えるたびに、アクティビティを破棄して再作成する必要があり、大きなファイルがリロードされます。これには約30秒かかります。実際にこれを公開する場合、これはかなり不便です。私はここで何か間違ったことをしていると確信しています。onSaveInstanceState()とonRestoreInstanceState()について聞いたことがありますが、それらの使用方法がわかりません。向きの変更をスピードアップするためにこれをどのように使用できるかを知っている人はいますか?