1. 程式人生 > >Android開發之按鍵控制

Android開發之按鍵控制

<span style="font-family: verdana, 'ms song', Arial, Helvetica, sans-serif; background-color: rgb(250, 247, 239);">Android手機一般都有三個鍵,返回鍵、Home鍵、選單鍵;</span>

Android系統的選單支援主要通過4個介面來實現。

Activity有一套機制來實現對選單的管理,方法如下:

1.public boolean onCreateOptionsMenu(Menu menu)此方法用於初始化選單,其中menu引數就是即將要顯示的Menu例項。

返回true則顯示該menu,false 則不顯示;(只會在第一次初始化選單時呼叫)

2.public boolean onPrepareOptionsMenu(Menu menu)onCreateOptionsMenu執行後,選單被顯示前呼叫;如果選單已經被建立,則在選單顯示前被呼叫。 同樣的, 返回true則顯示該menu,false 則不顯示;(可以通過此方法動態的改變選單的狀態,比如載入不同的選單等)

3.public void onOptionsMenuClosed(Menu menu)每次選單被關閉時呼叫.

選單被關閉有三種情形,menu按鈕被再次點選、back按鈕被點選或者使用者選擇了某一個選單項)

4.public boolean onOptionsItemSelected(MenuItem item)選單項被點選時呼叫,也就是選單項的監聽方法。

 通過這幾個方法,可以得知,對於Activity,同一時間只能顯示和監聽一個Menu 物件。

看下程式碼:

//這裡是初始化選單,建立一個選單有一個選項,(也可以適用xml佈局來設定選單的樣式)

public boolean onCreateOptionsMenu(Menu menu){ 

super.onCreateOptionsMenu(menu); 

int group1 = 1; 

menu.add(group1, 1, 1, "選單"

); 

returntrue;   

}

//這裡是選單的監聽方法,選單選項被點選時觸發這個方法響應事件

public boolean onOptionsItemSelected(MenuItem item) { 

    switch (item.getItemId()) {

    case 1: 

  Intent intent = new Intent();

  intent.setClass(getApplicationContext(), BActivity.class);

  startActivity(intent);

        break

default:

    return super.onOptionsItemSelected(item); 

    } 

return true

}