1

这就是我想要的:

FragmentActivity 首先显示 Fragment1,然后是 Fragment2。每个片段应该:

  • 在下载数据之前显示自定义进度对话框
  • 从 Internet 下载数据
  • 关闭对话框
  • 用获取的数据填充视图

当应该显示新的 Fragment 时,我有 FragmentActivity 和子 Fragments 调用活动方法:

public class ActivityInTab extends FragmentActivity {
    public void navigateTo(Fragment newFragment) {
        FragmentManager manager = getSupportFragmentManager();
        FragmentTransaction ft = manager.beginTransaction();

        ft.replace(R.id.frameLayout, newFragment);

        ft.addToBackStack(null);
        ft.commit();
    }
}

如果我使用活动而不是片段,我会写这样的东西:

public class MyActivity extends Activity{
    @Override
    public void onCreate(Bundle savedInstanceStage){
        super.onCreate();
        setContentView(R.layout.main);
        showDialog();//Show ProgressDialog here
        startFetchingData();
    }

    private void startFetchingData(){
        new DownloadDataTask().execute(...);
    }

    private class DownloadDataTask extends AsynkTask<...>{
        protected void onPostExecute(...){
            populateViewsWithDownloadedData();
            hideDialog();//dismiss ProgressDialog
        }
    }
}

我应该在此步骤中使用哪些片段生命周期回调?

4

0 回答 0