如何设置使用android后退按钮的多个父活动
我有一个应用程序,它从不同的活动中多次调用一个活动。 因此,我尝试在这个活动的操作栏中实现“后退按钮”。 为此,我使用:如何设置使用android后退按钮的多个父活动,android,navigation,parent-child,Android,Navigation,Parent Child,我有一个应用程序,它从不同的活动中多次调用一个活动。 因此,我尝试在这个活动的操作栏中实现“后退按钮”。 为此,我使用: switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; default: return super.onOptionsItemSelected
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
default:
return super.onOptionsItemSelected(item);
}
以及:
现在的问题是,我无法将父活动设置为我的android清单,因为我不知道谁是此活动的父活动
解决办法是什么
谢谢,这比你想象的要容易
switch (item.getItemId()) {
case android.R.id.home:
finish();
return true;
default:
return super.onOptionsItemSelected(item);
}
方法finish()
将销毁您的活动并显示启动它的活动。如果我没弄错的话,那就是你想要的
您当前的解决方案适用于您每次都想回到同一位家长的情况,例如Gmail应用程序。当您打开通知中的电子邮件,然后按actionbar后退按钮时,它不会导航回主屏幕,但会显示您的Gmail收件箱
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == android.R.id.home) {
onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
您将始终返回启动新活动的活动
不需要使用下面的代码
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="view.TweetsIndividuoActivity" />
我也是Android的新手,但我通过使用“startActivityForResult(intent,1)”而不是“startActivity(intent)”调用第二个活动解决了这个问题。我认为这使它成为父母/孩子的关系,而不是兄弟姐妹的活动
我不需要使用onOptions ItemSelected()或finish()。谢谢!但如果这种方式有效,我不明白为什么要使用:NavUtils.navigateUpFromSameTask(this);这是为了我在回答的最后一部分所写的。活动正在任务中运行。如果打开属于其他任务的活动,则必须选择以下选项:1。回到以前可见的活动;后退按钮就是这样做的。返回到当前任务的上一个活动。请阅读详细解释。我被一个使用闪亮的Google Util(NavUtils.navigateUpFromSameTask(这个);)的人赶上了。。。
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="view.TweetsIndividuoActivity" />