我有超过3个屏幕,每个屏幕上都有注销按钮,当我点击注销按钮时,它应该进入登录页面,如果我点击登录页面上的后退按钮,它不应该转到应用程序并退出申请。
这里我尝试了注销按钮的代码点击:
Intent in = new Intent(activity, LoginActivity.class);
in.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_CLEAR_TASK);
in.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
activity.startActivity(in);
它开发了超过90%的Android手机,但它不适用于少数手机,Ex三星迷你标签。并且它不适用于较低版本的手机。
任何人都可以指导我解决这个问题吗?
答案 0 :(得分:2)
将您当前的活动添加到列表listContext
中,如下所述。
listContext.add(Activity.this);
尝试使用此方法完成所有活动。
public static List<Context> listContext = new ArrayList<Context>();
public static void finishActivities() {
for (Context context : listContext) {
if(context!=null)
((Activity) context).finish();
}
listContext.clear();
}
答案 1 :(得分:0)
在退出按钮活动中使用此代码:
Intent setIntent = new Intent(this, LoginActivity.class);
setIntent.addCategory(Intent.CATEGORY_HOME);
setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(setIntent);
并在登录屏幕上使用此代码:
public void onBackPressed() {
// TODO Auto-generated method stub
Log.d("CDA", "onBackPressed Called");
Intent setIntent = new Intent(Intent.ACTION_MAIN);
setIntent.addCategory(Intent.CATEGORY_HOME);
setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(setIntent);
return;
}
答案 2 :(得分:-1)
禁用登录屏幕上的后退按钮
@Override
public void onBackPressed() {
//to nothing }