getDashboardData()
- это не переменная, вам нужно изменить ее как
this.dashboardService.getDashboardData().subscribe((result) => {
console.log(result);
});
Как я понимаю, метод uploadImageToServer()
выполняет некоторое сетевое действие. Если это так, вы должны сделать это в потоке не-пользовательского интерфейса. Кроме того, в вашем коде catLoadingView.dismiss();
не будет ждать, пока ваш асинхронный процесс не будет выполнен, и сразу же скрывает представление загрузки. Вы должны использовать какой-нибудь метод обратного вызова, чтобы исправить завершение процесса загрузки, а затем отклонить ваше представление.
Это будет выглядеть так:
Ваш интерфейс обратного вызова:
interface MyCallback {
void onUploaded();
}
ваш метод загрузки:
void upload(MyCallback callback) {
// some async process on non-UI thread
callback.onUploaded();
}
Наконец, вызовите ваш метод:
case R.id.socialMediaShareButton:
catLoadingView.show(getSupportFragmentManager(),"");
//loadingDialog = LoadingDialog.Companion.get(SocialMediaActivity.this).show();
uploadImageToServer(new MyCallback() {
runOnUiThread {
catLoadingView.dismiss();
}
});
break;