在Android Annotations中,尝试使用@background和ProgressDialog执行API请求[登录]以通知用户正在进行登录。
@RestService
AuthInterface loginClient;
@Background
void login() {
loggedUser = loginClient.login(new Login(getUsername(), getPassword()));
}
@UiThread
void showProgress() {
progressDialog.show(this, "Loading", "please wait...", true);
}
@UiThread
void hideProgress() {
progressDialog.dismiss();
}
答案 0 :(得分:2)
在后台完成后调用使用@UIThread
注释的方法。在您的情况下,您希望在@Background
完成后执行此操作:
@UIThread
void hideProgress() {
progressDialog.dismiss();
}
所以你的另一个方法 - void showProgress()
不应该有@UIThread
注释,应该在用户启动操作时调用,例如在某些onClickListener
或类似的东西中。