在我看来,实现中缺少一件事:在抽屉打开之前DrawerLayout
触发的事件。
drawerToggle = new ActionBarDrawerToggle(this, drawerLayout, R.drawable.ic_drawer, R.string.drawer_open, R.string.drawer_close) {
public void onDrawerClosed(View view) {
//...
}
public void onBeforeDrawerOpened(View drawerView) {
//...
}
public void onDrawerOpened(View drawerView) {
//...
}
};
需要它的原因是设置抽屉项的状态,例如选择、启用和类似的菜单项。将其放入onDrawerOpened()
回调中是可行的,但在打开后更改菜单外观看起来并不正确。
我的第一个想法是扩展ActionBarDrawerToggle
并提供新活动。我应该重新发明轮子:-)还是已经有人做过?