action bar是3.0開始才有的元件

如果2.3以下的版本

必須使用 android-support-v4.jar  這個library才行

其實action bar是為了取代menu鍵而作的元件

用法跟過去的menu相同

onCreateOptionsMenu()這個method

action bar的功能都在此設定

getMenuInflater()回傳一個MenuInflater

inflater的意思是 打氣 膨脹

MenuInflater就是把一個無實質內容的xml

inflate成 app裡所顯示的action bar(or menu)

R.menu.home_menu 設定這個Activity的action bar上

要包含哪些功能

後兩行的SearchView是要做搜尋功能

使用action bar不一定包含那兩行

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.home_menu, menu);
    SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
    searchView.setOnQueryTextListener(this);
    return true;
}


onOptionsItemSelected 這個method

是用來設定點擊action bar後的行為

利用 item.getItemId() 來取得所點擊的欄位

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    return true;
}

創作者介紹
創作者 Klv 的頭像
Klv

值得嗎?

Klv 發表在 痞客邦 留言(0) 人氣()