国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android使用xml文件資源定義菜單實現方法示例

2019-10-21 21:19:21
字體:
來源:轉載
供稿:網友

本文實例講述了Android使用xml文件資源定義菜單實現方法。分享給大家供大家參考,具體如下:

使用 XML 文件定義菜單

Android 提供了創建菜單的方式,一種是在 Java 代碼中創建,一種是使用XML 文件定義。上面的實例都是 Java 創建菜單,在 Java 存在如下大學。

實現效果如下:

Android,xml,文件資源,定義菜單

具體實現:

一、在 /res 下建立 /menu文件夾

二、在menu文件夾下建立:menu_main.xml:

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android">  <item android:title="@string/app_name"    android:icon="@drawable/seek02">    <menu>      <!--定義一組選項菜單-->      <group android:checkableBehavior="single">        <!--定義多個菜單項-->        <item          android:id="@+id/font_10"          android:title="font_10"/>        <item          android:id="@+id/font_12"          android:title="font_12"/>        <item          android:id="@+id/font_14"          android:title="font_14"/>        <item          android:id="@+id/font_16"          android:title="font_16"/>        <item          android:id="@+id/font_18"          android:title="font_18"/>      </group>    </menu>  </item>  <!--定義一個普通菜單項-->  <item android:id="@+id/plain_item"    android:title="plain_item"/>  <item android:title="font_color"    android:icon="@drawable/seek03">    <menu>      <!--定義一個普通選項菜單-->      <group>        <!--定義三個菜單項-->        <item          android:id="@+id/red_font"          android:title="red_title"/>        <item          android:id="@+id/green_font"          android:title="red_title"/>        <item          android:id="@+id/blue_font"          android:title="red_title"/>      </group>    </menu>  </item></menu>

三、在menu文件夾下建立: context.xml:

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android">  <!--定義一組單選菜單項-->  <group android:checkableBehavior="single">    <!--定義三個菜單項-->    <item      android:id="@+id/red"      android:title="red_title"      android:alphabeticShortcut="r"/>    <item      android:id="@+id/green"      android:title="red_title"      android:alphabeticShortcut="g"/>    <item      android:id="@+id/blue"      android:title="red_title"      android:alphabeticShortcut="b"/>  </group></menu>

四、主活動里的實現:

public class MainActivity extends AppCompatActivity {  private TextView textView;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    textView = (TextView) findViewById(R.id.txt);    // 為文本框注冊上下文菜單    registerForContextMenu(textView);  }  @Override  public boolean onCreateOptionsMenu(Menu menu) {    MenuInflater inflater = new MenuInflater(this);    //裝填R.Menu.my_menu菜單,并添加到menu中    inflater.inflate(R.menu.menu_main,menu);    return super.onCreateOptionsMenu(menu);  }  //創建上下文菜單時觸發該方法  @Override  public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {    MenuInflater inflater = new MenuInflater(this);    //裝填R.Menu.menu菜單,并添加到menu中    inflater.inflate(R.menu.context,menu);    menu.setHeaderIcon(R.drawable.seek02);    menu.setHeaderTitle("請選擇背景色");  }  //上下文菜單中菜單項被單擊時,觸發該方法  @Override  public boolean onContextItemSelected(MenuItem item) {    //勾選菜單項    item.setChecked(true);    switch (item.getItemId()){      case R.id.red:        item.setChecked(true);        textView.setBackgroundColor(Color.RED);        break;      case R.id.green:        item.setChecked(true);        textView.setBackgroundColor(Color.GREEN);        break;      case R.id.blue:        item.setChecked(true);        textView.setBackgroundColor(Color.BLUE);        break;    }    return true;  }  //菜單項被單擊后的回調方法  @Override  public boolean onOptionsItemSelected(MenuItem item) {    if (item.isCheckable()){      //勾選菜單項      item.setCheckable(true);    }    //switch 判斷單擊哪個菜單項,并有針對性的做出響應    switch (item.getItemId()){      case R.id.font_10:        textView.setTextSize(10 * 2);        break;      case R.id.font_12:        textView.setTextSize(12 * 2);        break;      case R.id.font_14:        textView.setTextSize(14 * 2);        break;      case R.id.font_16:        textView.setTextSize(16 * 2);        break;      case R.id.font_18:        textView.setTextSize(18 * 2);        break;      case R.id.red_font:        textView.setTextColor(Color.RED);        break;      case R.id.green_font:        textView.setTextColor(Color.GREEN);        break;      case R.id.blue_font:        textView.setTextColor(Color.BLUE);        break;    }    return true;  }}

 

希望本文所述對大家Android程序設計有所幫助。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阳春市| 平安县| 永定县| 雷州市| 揭东县| 兴文县| 凤台县| 西昌市| 资溪县| 观塘区| 昌江| 仁化县| 三河市| 扎囊县| 格尔木市| 潼关县| 普兰店市| 大庆市| 深泽县| 彩票| 长岛县| 扎赉特旗| 台中市| 苍梧县| 塔河县| 西宁市| 松原市| 犍为县| 金川县| 壤塘县| 麻阳| 庆城县| 兰坪| 株洲市| 保德县| 泸西县| 松溪县| 板桥市| 衡水市| 久治县| 吉木萨尔县|