使用 onCreate 准备就绪后切换到 activity

Switch to activity after it's ready with onCreate

我有两项活动,一项是从 Intent 开始另一项。 child activity 在 onCreate 中有大量工作要做。第一个 activity 仅用于加载。当我启动 child activity 时,我在加载完成后黑屏等待。

如何等待第一个 activity 并在完成创建后切换到第二个(某些侦听器或回调?)

你必须使用 AsyncTask。

试试这个代码

public class MainActivity extends Activity
{

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);


        // call your long task from here
        doWork();
    }

    // write this method in your First Activity
    private void doWork()
    {

        new AsyncTask<Void, Void, String>()
        {

            ProgressDialog progressDialog;

            @Override
            protected void onPreExecute() {
                super.onPreExecute();
                progressDialog = new ProgressDialog(MainActivity.this);
                progressDialog.setMessage("Loading...");
                progressDialog.show();
            }

            @Override
            protected String doInBackground(Void... params) {

                // do your long task here

                // And return your result to the onPostExecute method.
                return null;
            }

            @Override
            protected void onPostExecute(String s) {
                super.onPostExecute(s);

                // after finishing your task dismis your dialog.
                progressDialog.dismiss();

                // And go to your next Activity.

                Intent intent = new Intent(MainActivity.this, NextActivity.class);
                startActivity(intent);
            }
        }.execute();

    }
}