我有一个具有以下层次结构的应用程序:
MainActivity (Shows list of dates)
|
ViewPagerFragment (Shows list of children for those dates)
|
ChildFragment (Detail View)
我正在尝试从设计支持库中实现导航视图,但是无法让工具栏上的实际导航工作。
这是主要活动工具栏:
以下是从主活动导航后的ViewPagerFragment,请注意没有后退按钮......
这是所需的工具栏:
我使用以下代码添加片段:
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content_frame, fragment, fragment.getClass().getName())
.addToBackStack(fragment.getClass().getName())
.commitAllowingStateLoss();
以下是与活动启动相关的代码:
protected void setupActionBar() {
setSupportActionBar(toolbar);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setDisplayHomeAsUpEnabled(true);
}
}
我的导航抽屉设置:
protected void setupNavigationDrawer() {
navigationView.setNavigationItemSelectedListener(this);
actionBarDrawerToggle = new ActionBarDrawerToggle(this, drawerLayout, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawerLayout.setDrawerListener(actionBarDrawerToggle);
actionBarDrawerToggle.syncState();
}
点击设备上的硬件返回按钮可以正确导航。我似乎无法让抽屉上的后箭头显示出来......有什么建议吗?
答案 0 :(得分:3)
要禁用导航抽屉图标并显示其他图标,您需要在ActionBarDrawerToggle
上致电setDrawerIndicatorEnabled(false)
。
您可能还需要致电setHomeAsUpIndicator()
来指定您要使用的图标,而不是"汉堡包"图标。
答案 1 :(得分:1)
您是否尝试过活动的ActionBar?
onViewCreated中的:
Toolbar mToolbar = (Toolbar) view.findViewById(R.id.toolbar);
((Activity) getActivity()).setSupportActionBar(mToolbar);
((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);