【发布时间】:2019-01-19 12:17:02
【问题描述】:
当用户单击上传以显示加载时,我正在尝试实现自定义加载视图。当调用 show() 时,它工作得很好,但在调用dismiss() 时。什么都不显示
我已经完成了所有的谷歌搜索并在 StackOverflow 上搜索了类似的问题
public void onClick(View v) {
switch (v.getId()){
case R.id.socialMediaShareImage:
getImageFromStorage();
break;
case R.id.socialMediaShareButton:
catLoadingView.show(getSupportFragmentManager(),"");
//loadingDialog = LoadingDialog.Companion.get(SocialMediaActivity.this).show();
uploadImageToServer();
catLoadingView.dismiss();
break;
default:
Log.i("ERROR INSWITCH","id mismatch");
}
}
When clicking on share button the loading view appear and dismiss after executing the uploadImageToServer() method.
【问题讨论】:
-
我猜
uploadImageToServer()方法在一个新线程上工作并在其上获得回调,并且在同一个线程上调用方法dismiss()。所有与视图组件相关的方法都应该在Main thread上调用。所以尝试在你的异步进程之后回到主线程,然后调用dismiss() -
uploadImageToServer() 方法在 UI 线程中。我还没有创建一个新线程@David
标签: java android android-studio android-progressbar