Android学习笔记之MENU

今天学习如何在Android里进行MENU操作,比较了一下微软和android对菜单操作的区别,总的来说,还是微软那一套比较方便(*^__^*)嘻嘻……

好,转入正题。在android要建立自己的菜单,要重载一下父类的onCreateOptionsMenu方法。然后在onCreateOptionsMenu里进行添加菜单的操作。代码如下:

@Override

publicbooleanonCreateOptionsMenu(Menumenu){

super.onCreateOptionsMenu(menu);

menu.add(0,ADD_ID,0,R.string.Menu_Add);

menu.add(0,DELETE_ID,1,R.string.Menu_Del);

menu.add(0,UPDATE_ID,2,R.string.Menu_Update);

menu.add(0,EXIT_ID,3,R.string.Menu_Exit);

returntrue;

}

其中ADD_ID、DELETE_ID、UPDATE_ID、EXIT_ID是每个菜单项的Id,定义如下:

publicstaticfinalintADD_ID=Menu.FIRST;

publicstaticfinalintDELETE_ID=Menu.FIRST+1;

publicstaticfinalintEXIT_ID=Menu.FIRST+2;

publicstaticfinalintUPDATE_ID=Menu.FIRST+3;

然后在资源文件里添加要显示在菜单上的文本,打开string.xml添加如下代码:

<stringname="Menu_Add">AddItem</string>

<stringname="Menu_Del">DeleteItem</string>

<stringname="Menu_Update">UpdateItem</string>

<stringname="Menu_Exit">Exit</string>

一个简单的菜单就做好了,简单吧。建立好菜单后,下一步就是为菜单添加相应事件了。这个也是重载父类的onOptionsItemSelected方法,代码如下:

@Override

publicbooleanonOptionsItemSelected(MenuItemitem){

switch(item.getItemId()){

caseADD_ID:setTitle("Insert...");break;

caseDELETE_ID:setTitle("Delete...");break;

caseEXIT_ID:setTitle("Exit...");break;

caseUPDATE_ID:setTitle("Update...");break;

default:break;

}

returntrue;

}

这样一个基本的菜单就实现了,(*^__^*)嘻嘻……,简单吧。下回继续。(附本例所有代码)

ex01.java

packageoms.ex01;

importandroid.app.Activity;

importandroid.os.Bundle;

importandroid.view.Menu;

importandroid.view.MenuItem;

publicclassex01extendsActivity{

/**Calledwhentheactivityisfirstcreated.*/

publicstaticfinalintADD_ID=Menu.FIRST;

publicstaticfinalintDELETE_ID=Menu.FIRST+1;

publicstaticfinalintEXIT_ID=Menu.FIRST+2;

publicstaticfinalintUPDATE_ID=Menu.FIRST+3;

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

}

@Override

publicbooleanonCreateOptionsMenu(Menumenu){

super.onCreateOptionsMenu(menu);

menu.add(0,ADD_ID,0,R.string.Menu_Add);

menu.add(0,DELETE_ID,1,R.string.Menu_Del);

menu.add(0,UPDATE_ID,2,R.string.Menu_Update);

menu.add(0,EXIT_ID,3,R.string.Menu_Exit);

returntrue;

}

@Override

publicbooleanonOptionsItemSelected(MenuItemitem){

switch(item.getItemId()){

caseADD_ID:setTitle("Insert...");break;

caseDELETE_ID:setTitle("Delete...");break;

caseEXIT_ID:setTitle("Exit...");break;

caseUPDATE_ID:setTitle("Update...");break;

default:break;

}

returntrue;

}

}
string.xml

<?xmlversion="1.0"encoding="utf-8"?>

<resources>

<stringname="hello">HelloWorld,ex01!</string>

<stringname="app_name">ex01</string>

<stringname="Menu_Add">AddItem</string>

<stringname="Menu_Del">DeleteItem</string>

<stringname="Menu_Update">UpdateItem</string>

<stringname="Menu_Exit">Exit</string>

</resources>

更多相关文章

  1. android 软件更新代码
  2. Ubuntu 下 Android源代码下载指南
  3. Android中图像变换Matrix的原理、代码验证和应用(一)
  4. android菜单详解六:快捷键和菜单intent
  5. Android系列之Android开发教程代码实例
  6. 自定义SeekBarPreference控件(老外出品,直接在preferences文件中
  7. Android Activity切换动画效果详解(附源代码)

随机推荐

  1. android实现页面背景的左右移动
  2. Android基本组件之文本框与编辑框组件(自
  3. android 按钮 的状态
  4. 【Android】Android中 Paint 字体、粗细
  5. ijkplayer入门之目录介绍及编译
  6. 使用迅雷下载android 镜像
  7. Android学习之界面篇(一)Android(安卓)Anim
  8. 【原创】Android之修改AlertDialog对话框
  9. Android(安卓)Bluetooth 总结
  10. 【Android高级】DexClassloader和PathCla