在我的应用程序中,有3个活动,它们的调用顺序是这样的......
启动活动--->仪表板活动--->列出活动
如果它是这样的话,那么如果按下List活动上的后退按钮,它将按照上面的相反顺序。
有一个要求,用户可以直接从Splash导航到List Activity(跳过仪表板活动)现在当用户点击List Activity上的按钮时,我不想显示活动中没有的Dashboard Activity栈。
所以请用最好的方法帮助我。
答案 0 :(得分:1)
传递一个布尔值,意图从其他任何一个转到List Activity。使用onBackPressed
检查布尔值是true还是false以跳过Dashboard Activity。
然后,如果为true,则加载仪表板活动的新意图和finish();列表活动。
答案 1 :(得分:0)
您可以在转到
时直接从列表活动中获取启动 来自ListActivity
致电Dashboard Activity
的 finish()
Intent i = new Intent(DashboardActivity.this,ListActivity);
startActivtiy(i);
finish();
答案 2 :(得分:0)
你必须从Splash和DashboardActiviy传递类名作为额外的意图。
在List Activity中,您必须使用getIntent()获取类名。
当用户点击后退按钮时,您需要根据您可以做出决定来检查班级名称。
if(name.equalIgnorecase(DashboardActivit.class.getSimpleName()){
//Add your intent
}else{
//
}
这可能会为您提供明确的解决方案。试一试
答案 3 :(得分:0)
使用startAcvitiyForResult
Intent i = new Intent(this, Activity_2.class);
startActivityForResult(i, 1);
并在你的内心活动中
@Override
public void onBackPressed ()
{
finish();
}
在内部活动结束后,您也可以根据自己的喜好在外部活动中进行操作
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if(resultCode == 1){
Log.i("TEST", "RESULT_OK");
}
else {
return;
}
}
}