【发布时间】:2016-10-24 05:31:26
【问题描述】:
我想更改工具栏上导航抽屉图标的 OnClickListener。之后,我想返回导航抽屉图标的默认行为和 OnClickListener。
这是我的代码:
private void changeToolbarSelection(){
String title;
if(inSelectionMode()) {
title = mContext.getString(R.string.selected, selectedPos.size());
mActivity.getToolbar().setNavigationIcon(mContext.getResources().getDrawable(R.mipmap.back_arrow));
mActivity.getToolbar().setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clearSelections();
LOG.info(TAG, "Back arrow pressed in Selection mode");
}
});
}
else {
title = mContext.getString(R.string.list_tab_title);
mActivity.getmDrawerToggle().syncState();
mActivity.getToolbar().setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Here I need to return on default OnClickListener
}
});
}
mActivity.getToolbar().setTitle(title);
}
提前致谢。
【问题讨论】:
-
如果我理解您要做什么,请不要直接在
Toolbar上设置导航图标和OnClickListener。通过ActionBarDrawerToggle设置它们,使用setHomeAsUpIndicator()和setToolbarNavigationClickListener()方法,并使用setDrawerIndicatorEnabled()方法在切换导航和常规导航之间切换。
标签: android onclick navigation-drawer onclicklistener android-toolbar