Webからいくつかの情報をダウンロードしている間、アクティビティを表示します。 情報のダウンロードが完了したら、別のアクティビティを表示します。AsyncTaskを使用しているときに結果が返るのを待っている間にアクティビティを表示します。
これは私のコードです:
public class SplashScreenActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash_screen_layout);
load();
}
private void load() {
try {
ArrayList data= new LoadPage().execute().get();
if(data!= null) {
startActivity(new Intent(getApplicationContext(), MainActivity.class));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
かなりシンプルですが、私がいる問題は、この活動は、画面(UI)に示されていないということです。情報はダウンロードされ、MainActivityは予期されたとおりに開始されますが、このアクティビティ(SplashScreenActivity)はユーザーに決して表示されません。
MainActivityの中に入ると、「戻る」ボタンを押すと、SplashScreenActivityが表示されます。
私はUIスレッドと、getメソッドをnew LoadPage().execute().get();
に呼び出して、結果が来るのを待っていると考えています。
どうすればこの問題を解決できますか?ありがとう。