私の活動では、Webサービスから画像をダウンロードする必要がありましたので、onCreate()
で呼び出されるupdateUi
メソッドを使用しました(この時点でデータがないためにui要素を非表示にします) TextView
に「データ読み込み...」のようなメッセージが表示されます。Android onWindowFocusChangedが早く呼び出されました
次に、をロードしてboolean
とし、1回だけ呼び出すようにします。 onWindowFocusChanged
私はwebserviceから必要なすべてのデータをダウンロードし、updateUi
を再度呼び出して元のuiを表示し、 "データ読み込み" TextView
を隠します。
目標は、ユーザーが何が起こっているのかわからないうちに、隠された処理の代わりにボタンを押した後ですぐに新しいアクティビティを開くことです。
私はこの方法が問題なくうまく動作する他の10のアクティビティを持っていますが、この特定のアクティビティでは、新しいアクティビティが表示される前にonWindowFocusChanged
が呼び出されるようです。ボタンをクリックしてアクティビティを開くと何も表示されず、何秒間もディスプレイに何も表示されず、すべてのデータが入力されたオリジナルのuiからアクティビティが始まります。
アクティビティが表示されない理由はわかりませんアクティビティが既に表示されていない間にonWindowFocusChanged
のタスクを実行するのではなく、 "データロード.." TextView
を使用していますか?
コードは私の他のアクティビティと同じですが、誰かがこの問題を経験していますか?