首先,我在StackOverflow上搜索并阅读了一些相关的帖子,但它并没有真正解决我的问题。从屏幕截图中,您可以看到我在AndroidManifest中添加了一些编码,它会在左上角添加一个“箭头” - 它作为后退按钮。
AndroidManifest.xml
<activity android:name=".MainStory"
android:parentActivityName=".MainActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
在我的MainActivity标签3片段
上public void onListItemClick(ListView l, View v, int position, long id) {
Intent intent = new Intent(getActivity(),MainStory.class);
startActivity(intent);
}
因此,从屏幕截图中,我在Tab 3中使用了ListFragment 。点击其中一个项目后,它将转到MainStory活动。如果我点击设备“后退按钮”,它将返回到MainActivity Tab 3(这就是我想要的)。
然而,当我点击“箭头”时,它将返回MainActivity标签1,但不会返回MainActivity的标签3.
所以我的问题是如何在点击它时回到 Tab 3 Fragment 就像设备“后退按钮”一样?
答案 0 :(得分:1)
尝试在工具栏上执行以下操作:
protected Toolbar setUpToolBar(String title) {
Toolbar toolbar = (Toolbar) findViewById(R.id.appbar);
setSupportActionBar(toolbar);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setTitle(Html.fromHtml("<font color=\"#ffffff\">" + title + "</font>"));
actionBar.setHomeButtonEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(true);
} else {
AMLog.d("Action bar is null");
}
if (toolbar != null) {
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
}
return toolbar;
}
答案 1 :(得分:0)
这样做,对我有用:
@Override
public boolean onSupportNavigateUp() {
finish(); // Returns you to the last tab that you were before navigating
return false; // Cancels out the default action that takes you back to the 1st tab
}
希望有帮助,
欢呼