好吧,那就是我的问题.
当用户按下后面的底部时,我需要删除所有已打开活动的堆栈:
@Override
public void onBackPressed(){
Intent i = new Intent(context, CrisolMainApp.class);
i.putExtra(CrisolMainApp.CERRAR_APP, true);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
}
Run Code Online (Sandbox Code Playgroud)
关键是这与我的大多数手机一起使用,但昨天我尝试使用三星Galaxy Mini(android 2.3.3)并且它无法正常工作!它不会删除一堆活动.
谁知道为什么?
编辑:我正在检查doc,我发现在API 11上添加了"Intent.FLAG_ACTIVITY_CLEAR_TASK"(我的三星Galaxy Mini适用于Android 2.3.3,因此,API 10).......我不知道,但我想这就是问题所在.
任何人都知道如何使API低于11的工作方式相同?
我试图添加这些标志,它也没有工作:
@Override
public void onBackPressed(){
Intent a = new Intent(this, CrisolMainApp.class);
a.putExtra(CrisolMainApp.CERRAR_APP, true);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
a.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(a);
finish();
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
@Override
public void onBackPressed(){
Intent a = new Intent(this, CrisolMainApp.class);
a.putExtra(CrisolMainApp.CERRAR_APP, true);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
a.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(a);
finish();
}
Run Code Online (Sandbox Code Playgroud)
您没有完成该活动。
Intent i = new Intent(context, CrisolMainApp.class);
i.putExtra(CrisolMainApp.CERRAR_APP, true);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
finish();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10804 次 |
| 最近记录: |