【发布时间】:2016-03-28 18:19:55
【问题描述】:
当我在开始另一个活动之前不调用 Toast 时,事情会按预期工作。但是,如果我在 startActivity 之前调用 Toast,则活动将不会开始。请检查此代码以了解我的问题:
class LoginTask extends HttpAsyncTask {
@Override
protected void onPostExecute(String result) {
if (result != null) {
LoginResponse loginResponse = (LoginResponse) getMappedModel(result, LoginResponse.class);
if(loginResponse.getResult().equals("success")) {
/*startActivity works only if I comment this line*/ Toast.makeText(getBaseContext(), "Logged in Successfully!", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
startActivity(intent);
} else {
Toast.makeText(getBaseContext(), "Wrong username or password!", Toast.LENGTH_LONG).show();
}
}
}
}
【问题讨论】:
-
将
getBaseContext()替换为LoginActivity.this并重试。 -
做到了。这没有帮助!
-
收到任何错误日志吗?
-
尝试:“This”或“ActivityName.this”。如果是 "Activity" , "getActivity()"
标签: android android-intent android-toast