在做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);
}