1. ホーム
  2. android

[解決済み] 向きが変わってもアプリケーションを再読み込みしない

2022-04-28 20:19:35

質問

画面を回転させても何も変化しないようにしたいだけなのですが。私のアプリは、最初にロードしたときにランダムな画像を表示し、デバイスを回転させることで ない は別のランダムな画像を選択します。 どうすれば(単純に)この動作を停止させることができますか?

解決方法は?

一般的に3つの方法があります。

  1. いくつかの回答が示唆するように、アクティビティが初めて作成された場合と、次のように復元された場合とを区別することができます。 savedInstanceState . これは onSaveInstanceState のパラメータをチェックし onCreate .

  2. を追加することで、アクティビティを1つの方向にロックすることができます。 android:screenOrientation="portrait" (または "landscape" から <activity> をマニフェストに追加してください。

  3. を指定することで、自分自身で画面の変更を処理することを意味することをシステムに伝えることができます。 android:configChanges="orientation|screenSize" の中に <activity> タグを使用します。この方法では、アクティビティは再作成されず、代わりにコールバックを受け取ります(あなたにとって有用ではないので、無視してもかまいません)。

個人的には(3)がいいと思います。もちろん、アプリをどちらかの向きに固定しても構わないのであれば、(2)でも良いと思います。