0

向きを縦向きから横向きに変更したときにアクティビティが再開されないようにしたいので、マニフェストの対応するアクティビティでこれを呼び出します。

android:configChanges="orientation|screenSize"

私のアクティビティはもう再開されませんが、残念ながら、横向きのアクティビティ用に持っているドローアブルとレイアウトがロードされていません。

上記の行を削除すると、ドローアブルとレイアウトが正しく読み込まれましたが、アクティビティが再開されました。

ランドスケープリソースが正しくロードされている間にアクティビティが再開しないようにする方法はありますか?

4

1 に答える 1

2

最善の解決策は、ローテーションが発生する前に状態を保存し、システムに通常どおりアクティビティをリロードさせてから、以前に保存した状態を再入力することです。onSaveInstanceState(Bundle savedInstanceState)メソッドをオーバーライドしてこれを行うことができます。

ただし、向きの変更を自分で管理する場合は、次の同様の質問を読むことができます。アクティビティを再開せずに、向きが変更されたときにAndroidRelativeLayoutを更新するにはどうすればよいですか。

于 2012-07-02T15:46:47.927 に答える