是否可以在工具栏中同时显示主页图标和后退图标? 1)是否可以更改后退按钮图标和主页图标的显示顺序。 目前它首先显示箭头按钮,然后显示徽标(主页按钮)
2)第二个要求是在点击主页图标时清除活动堆栈,如果是后退按钮,则返回上一个屏幕。
我有以下代码,它将显示箭头后退键和设置为徽标的主页图标。是否可以在这两个图标上处理点击事件:
Toolbar toolbar = (Toolbar)findByViewID(R.id.toolbar);
toolbar.setNavigationIcon(R.drwable.btn_back);
setSuppportActionBar(toolbar);
getSupportActionBar().setLogo(R.drawable.home_icon);
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
我可以通过在onOptionsITemSelected方法中处理它来处理点击箭头图标。 有没有办法处理点击徽标图标? 我的想法是使用主页按钮单击以清除活动堆栈,并使用后退按钮导航回上一屏幕。
我试过
toolbar.setNavigationOnClickListener()
但它对后退按钮点击没有影响。
处理android.R.id.home在
中处理时有效onOptionsItemSelected()
答案 0 :(得分:6)
导航回来。这对我有用。
@Override
public boolean onOptionsItemSelected(MenuItem menuItem) {
switch (menuItem.getItemId()) {
case android.R.id.home:
Intent homeIntent = new Intent(this, HomeActivity.class);
homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(homeIntent);
}
return (super.onOptionsItemSelected(menuItem));
}
答案 1 :(得分:1)
试试这个
toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
if (item.getItemId() == android.R.id.home) {
getActivity().finish();
}
return true;
}
});
答案 2 :(得分:0)