如何知道我的活动何时完全创建?

时间:2013-03-07 11:33:39

标签: android multithreading android-activity

我有一个包含大量数据和元素的Activity。

当信息过多时,活动等待白色显示,这不是我想要的,我实际上想要在加载数据时显示活动

那么,我怎样才能知道我的活动何时完全创建?

我的意图是在第二个线程中启动等待活动的活动。

3 个答案:

答案 0 :(得分:3)

如果需要花费很长时间加载,您应该在另一个线程中异步加载该数据。启动另一个线程(通过使用AsyncTask,例如普通Java线程),加载数据并在Activity上显示一些loading-View,通知用户后台发生了某些事情。

答案 1 :(得分:2)

此方法在创建活动

后调用
@Override
    public void onStart() {
        super.onStart();
}

答案 2 :(得分:2)

您可以使用AsyncTask并显示进度对话框,直到数据加载完毕。

private class FetchRSSFeeds extends AsyncTask<String, Void, Boolean> {

  private ProgressDialog dialog = new ProgressDialog(HomeActivity.this);

  protected void onPreExecute() {
    this.dialog.setMessage(getResources().getString(
            R.string.Loading_String));
    this.dialog.show();
  }

protected Boolean doInBackground(final String... args) {
    try {

        // Fetch the data from URL
        // do background process

        return true;
    } catch (Exception e) {
        Log.e("tag", "error", e);
        return false;
    }
}

@Override
protected void onPostExecute(final Boolean success) {

    if (dialog.isShowing()) {
        dialog.dismiss();
    }

    if (success) {
        // Setting data to list adaptar
        setListData();
    }
}