加载 Activity 或加载按钮进度的进度条

Progress Bar for loading Activity or loading a button progress

我有一个 Activity,其中 ArrayList 正在加载内容,并在 onCreate() 上创建了包含超过 20-30 个表的数据库。所以在显示之前加载 Activity 需要 3 秒。我想在开始时为 Activity 的处理植入一个进度条。让黑屏永远不会出现,屏幕很可能是活的。

你的想法很好,可以向用户显示进度条。但是为了显示你需要使用 AsyncTask.

对于这种类型的时间记录程序,始终使用 AsyncTask。它非常易于使用。像下面这样创建 Class。

public class StoreDataToDB extends AsyncTask<Void, Void, Void> {
    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        progressBar.setVisibility(View.VISIBLE);
    }

    @Override
    protected Void doInBackground(Void... voids) {
        //Do all DB related Task Here
        return null;
    }

    @Override
    protected void onPostExecute(Void aVoid) {
        super.onPostExecute(aVoid);
        progressBar.setVisibility(View.GONE);
    }
}

在 doInBackground 方法中完成与任务相关的所有数据库。在 onCreate 中这样调用 class

new StoreDataToDB().execute();

您也可以使用 ProgressDialog 而不是进度条视图。