私のアプリケーション(minSdkVersion
17ですが、これについては柔軟です)では、私は1つのアクティビティを持っています。それは何らかのタイムテーブルを表示します。私はそれが現在の日を示し、正しい時間にスクロールさせたいと思います。 この機能はすでに完璧に機能しています。Android:アプリケーションがアクティブになっていて、オリエンテーションの変更ではなくコードを実行する
アプリが起動されるたびに、またはアプリが再びアクティブになるたびに(ホームボタンを押してからアプリアイコンをもう一度クリックしてアプリを終了しないで)
しかし、私はデバイスを回転させたときにこれをしたくありません。
例えば、私は方法があります:
private void scrollToNow() {
// do the calculation and scroll all views to the correct position
// this is code I already have fully functional!
}
を、私はそれに活動が再びアクティブになるたびに実行したいではなく、姿勢の変化に。
多くの組み合わせ(onStart
、onResume
、onCreate
)を試しましたが、そのうちのどれもトリックを行っていませんでした。私は、savedInstanceStateを使用してソリューションを構築しようとしましたが、失敗しました。
誰かが私のためのヒントや役に立つリンクを手に入れましたか?
おかげでたくさん、
オリバー
私はすでにそれを試したと思うが、その場合、正しく覚えていれば、オリエンテーションの変更以外の理由でアクティビティが破壊されたときでさえ、その旗が得られる。私はもう一度それを試みます。ありがとうございました! –
OK、私はもう一度それをテストし、onCreateはBundleインスタンスでのみ、向きが変わった場合にのみ呼び出されます。私は次のようなケースをテストしました。新しいアプリの起動、ホームボタンの押し、アプリを殺す/しないでアプリに戻ります。だから私は試してみたときにいくつかの間違いをしたと思う。私は一度onResumeが実行されたときにフラグをリセットするのを忘れたと思う。 –