【发布时间】:2016-11-04 18:42:30
【问题描述】:
我在单击按钮时有一个 Fragment 类,我应该显示一个包含内容的表格视图,根据要显示的内容,这需要 4 秒或更长时间的时间跨度。所以我想在按钮单击后显示一个 progressDialog 并在我的方法执行后关闭。
但是这个过程是在延迟之后出现的,就像在 tableview 出现之后。所以显示进度条有延迟。我尝试了很多方法仍然没有运气。
下面是我正在尝试的代码。
@Override
public void onClick(final View v) {
switch (v.getId()) {
case R.id.btn_spreadsheetAddTable: {
//Some code
}
break;
case R.id.btn_horizontalAddTable: {
AsyncTask<Void, Void, Void> task = new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
return null;
}
@Override
protected void onPreExecute() {
mProgressDialog = new ProgressDialog(getActivity());
mProgressDialog.setTitle("Processing...");
mProgressDialog.setMessage("Please wait.");
mProgressDialog.setCancelable(false);
mProgressDialog.setIndeterminate(true);
mProgressDialog.show();
displayAddTableView(editIsEnabled);
}
@Override
protected void onPostExecute(Void result) {
if (mProgressDialog!=null) {
mProgressDialog.dismiss();
}
}
};
task.execute((Void[])null);
editIsEnabled = false;
}
private void displayAddTableView(boolean editEnabled) {
//A code to display dynamic table with dynamic data
}
}
我也尝试过以下网址:
android - Progressbar Late Loading when button click
Loading Dialog, Progress Dialog on Button Click
ProgressDialog doesn't appear immediately
请帮助我。谢谢。
【问题讨论】: