3

私の活動にはいくつかのスピナーがあります。画面は 2 分後にロックされるように設定されています。画面のロックを解除すると、すべてのスピナーがリセットされます。ロック解除後に onCreate メソッドが呼び出されると思います。画面のロックを解除した後にアクティビティを再作成しないように設定する方法はありますか? 画面を回転させても同じことが起こりますが、それは問題ではありません。レイアウトを縦向きのみに設定できます。

それとも、onCreate メソッドを再度呼び出さないようにするために、ローテーションなどの設定があるのでしょうか?:

android:configChanges="orientation"

ありがとう。

4

1 に答える 1

1

http://developer.android.com/reference/android/app/Activity.html

「アクティビティは、再開状態と一時停止状態の間を頻繁に行き来する可能性があります。たとえば、デバイスがスリープ状態になったときなどです。」

http://developer.android.com/training/basics/activity-lifecycle/pausing.html

「アクティビティを再作成しないように設定」しようとするのではなく、アクティビティのライフサイクル メソッドを使用して状態を管理する必要があります。アクティビティは、設計上、常に作成/破棄/再作成されます (記録のために、1 つの方向にロックすることも一種の応急処置です。状態を正しく処理することは、それを行う必要がないことを意味します)。

この質問が役立つ場合があります。回答には、インスタンスの状態を処理する例があります: Save Instance State を使用した Android アクティビティ状態の保存

于 2013-01-06T15:10:20.710 に答える