[Android]使用 Navigation Drawer 製作側選單(2)

2014年2月11日 5 回應
Navigation Drawer & ActiobBar Demo

接續:[Android]使用 Navigation Drawer 製作側選單(1)

點選 app icon 開/關選單

前面我們做到從螢幕左邊往右滑來開啟側選單,但是觸碰 ActionBar 的 App icon 時卻沒有任何反應,現在就來處理 App icon 的動作。很簡單,覆寫 onOptionsItemSelected 方法即可:
public boolean onOptionsItemSelected(MenuItem item) {

    //home
    if (drawerToggle.onOptionsItemSelected(item)) {
        return true;
    }

    return super.onOptionsItemSelected(item);
}

這樣當你觸碰 App icon 時就可以開關 drawer 了。

[Android]使用 Navigation Drawer 製作側選單(1)

0 回應
Navigation Drawer Demo

關於 Navigation Drawer

Navigation Drawer "導覽抽屜",啊~就是隱藏式側選單啦。官方說法是,一個從螢幕左邊轉換而來的面板,用來顯示 App 主要的導覽選項。

顯示 navigation drawer 有兩種方法,從螢幕左邊往右滑,或觸碰 ActionBar 上的 app icon。navigation drawer 會從 ActionBar 下方展開,蓋在原本畫面之上。

圖片來源:
http://developer.android.com/design/media/navigation_drawer_overview.png

要關閉 navigation drawer,有以下幾種方式:
  • 觸碰 navigation drawer 之外的畫面
  • 在螢幕上往左滑
  • 觸碰 ActionBar 的 app icon
  • 按下 Back 按鈕

[Android]使用 ActionBarCompat 製作導覽列(3)

2014年2月7日 0 回應
ActionBar Tab

接續:[Android]使用 ActionBarCompat 製作導覽列(2)

DetailFragment.java

前面的例子是 Activity 加入 Fragment,接下來要做 Fragment 切換到另一個 Fragment
,並且說明如何傳遞參數。

DetailFragment 和 MainFragment 基本上一樣,只是多了接參數的部份:
public static final String DETAIL_VALUE = "detail_value";
private String value = "";

private MainActivity activity;

public static DetailFragment create(Bundle bdl){
    DetailFragment detailFragment = new DetailFragment();
    detailFragment.setArguments(bdl);
    return detailFragment;
}

[Android]使用 ActionBarCompat 製作導覽列(2)

0 回應
ActionBarCompat

接續:[Android]使用 ActionBarCompat 製作導覽列(1)

第一次使用 ActionBarCompat

1.首先要做前面轉換步驟的步驟1,把 appcompat library project 加入你的專案。

2.再來是修改你的 application theme,請打開 AndroidManifest.xml 修改如下,
<application
  android:theme="@style/Theme.AppCompat.Light.DarkActionBar"
    ...
    >
如果你有用 Action Bar Style 產生器,則可能會是
android:theme="@style/Theme.Myabs"
以上只要做一次,接下來就是製作 App 的內容了,現在你可能不會建立 Activity ,而是 ActionBarActivity (android.support.v7.app.ActionBarActivity),一樣在 onCreate 中指定 layout ,如此就是基本的使用 ActionBar 的 App 了。

[Android]使用 ActionBarCompat 製作導覽列(1)

2014年2月6日 0 回應
ActionBar

關於 ActionBar

什麼是 ActionBar 呢?其實就是導覽列,說法不同,概念雷同,在 Android 中,把導覽列上的功能選單稱為 Action button,所以整個導覽列就稱為 ActionBar,要瞭解它的概念及設計準則,可以參考官網的說明,這裡只做快速整理說明。

ActionBar 是一個固定在螢幕上方的一塊區域,橫跨整個 App,並提供可操作的 Action (選單)。



圖片來源:http://developer.android.com/design/media/actionbarbasics.png