在做Android开发时,某些类型的APP常常需要进行多个分页之间切换的行为,
开发者常会希望用户操作APP时能完全依赖屏幕,不靠功能键。
因此开发者在设计UI时需要达到下面的效果(点击侧选单按钮某项目以切换分页):
值得注意的是原本左上角的 '侧选单' 按钮变为了 '返回' 按钮。
那么这该如何做到呢?
这只需要呼叫用来实现侧选单的ActionBarDrawerToggle类别下的setDrawerIndicatorEnabled(boolean)方法就行了。
例如这样使用:
private ActionBarDrawerToggle mDrawerToggle;
mDrawerToggle.setDrawerIndicatorEnabled(false);
setDrawerIndicatorEnabled方法中传递的布林值传入false以切换成'返回' 按钮。
如果想改回侧选单按钮,只要把方法中传递的布林值改为true就行了。
另外,别忘了实作按下返回按钮时所要触发的动作:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (mDrawerToggle.onOptionsItemSelected(item)) {
return true;
}
switch (item.getItemId()) {
case android.R.id.home: // 按下ActionBar上的返回键回到上一页
FragmentManager fm = getFragmentManager();
if (fm.getBackStackEntryCount() > 0) {
fm.popBackStack();
}
break;
}
return super.onOptionsItemSelected(item);
}