重點
Menu的設計最主要分為兩個事件onCreateOptionsMenu()與onOptionsItemSelected()
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="請點選Menu鍵來顯示"
android:id="@+id/txv_Title"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true" />
</RelativeLayout>
MainActivity.java
package com.example.win7.menu;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView txv_Title;
public static final int itm_Menu1 = Menu.FIRST;
public static final int itm_Menu2 = Menu.FIRST+1;
public static final int itm_Menu3 = Menu.FIRST+2;
public static final int itm_Menu4 = Menu.FIRST+3;
public static final int itm_Menu5 = Menu.FIRST+4;
public static final int itm_Menu6 = Menu.FIRST+5;
public static final int itm_Menu7 = Menu.FIRST+6;
public static final int itm_Menu8 = Menu.FIRST+7;
public static final int itm_Menu9 = Menu.FIRST+8;
/*宣告三個子功能選單變數*/
private SubMenu sum_ShortCut;//快捷方式
private SubMenu sum_Menu;
private SubMenu sum_Help;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txv_Title=(TextView)findViewById(R.id.txv_Title);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
boolean b_Result = super.onCreateOptionsMenu(menu);
sum_ShortCut = menu.addSubMenu(0, itm_Menu1, 0, "捷徑");
sum_ShortCut.add(0, itm_Menu2, 0,"鍵盤鎖");
sum_ShortCut.add(0, itm_Menu3, 1,"操作模式");
sum_Menu = menu.addSubMenu(1, itm_Menu4, 0,"功能表");
sum_Menu.add(0 ,itm_Menu4, 0,"訊息服務");
sum_Menu.add(0 ,itm_Menu6, 1,"設定");
sum_Help = menu.addSubMenu(2 , itm_Menu7, 0,"通訊錄");
sum_Help.add(0, itm_Menu8, 0,"好友1");
sum_Help.add(0, itm_Menu9, 0 ,"好友2");
return b_Result;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()){
case itm_Menu1:
txv_Title.setText("以點選捷徑選單");
break;
case itm_Menu2:
txv_Title.setText("以點選-捷徑鎖");
break;
case itm_Menu3:
txv_Title.setText("以點選捷-操作模式");
break;
case itm_Menu4:
txv_Title.setText("以點選功能表選單");
break;
case itm_Menu5:
txv_Title.setText("以點選-訊息服務");
break;
case itm_Menu6:
txv_Title.setText("以點選-設定");
break;
case itm_Menu7:
txv_Title.setText("以點選通訊錄");
break;
case itm_Menu8:
txv_Title.setText("以點選-好友1");
break;
case itm_Menu9:
txv_Title.setText("以點選-好友2");
break;
}
return super.onOptionsItemSelected(item);
}
}
沒有留言:
張貼留言