Android学习笔记之MENU

来源:互联网 发布:捕鱼游戏源码下载 编辑:程序博客网 时间:2024/05/01 10:33

Android学习笔记之MENU

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

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

    @Override

    public boolean onCreateOptionsMenu(Menu menu){

     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);

     return true;

}

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

    public static final int ADD_ID    = Menu.FIRST;

public static final int DELETE_ID = Menu.FIRST + 1;

public static final int EXIT_ID   = Menu.FIRST + 2;

public static final int UPDATE_ID = Menu.FIRST + 3;

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

    <string name="Menu_Add">Add Item</string>

    <string name="Menu_Del">Delete Item</string>

    <string name="Menu_Update">Update Item</string>

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

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

    @Override

    public boolean onOptionsItemSelected(MenuItem item){

     switch(item.getItemId()){

     case ADD_ID:  setTitle("Insert...");break;

     case DELETE_ID: setTitle("Delete...");break;

     case EXIT_ID: setTitle("Exit...");break;

     case UPDATE_ID: setTitle("Update...");break;

     default:break;

     }

     return true;

    }

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

ex01.java

package oms.ex01;

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

import android.view.MenuItem;

public class ex01 extends Activity {

    /** Called when the activity is first created. */

public static final int ADD_ID    = Menu.FIRST;

public static final int DELETE_ID = Menu.FIRST + 1;

public static final int EXIT_ID   = Menu.FIRST + 2;

public static final int UPDATE_ID = Menu.FIRST + 3;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

    }

    

    @Override

    public boolean onCreateOptionsMenu(Menu menu){

     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);

     return true;

    }

    @Override

    public boolean onOptionsItemSelected(MenuItem item){

     switch(item.getItemId()){

     case ADD_ID:  setTitle("Insert...");break;

     case DELETE_ID: setTitle("Delete...");break;

     case EXIT_ID: setTitle("Exit...");break;

     case UPDATE_ID: setTitle("Update...");break;

     default:break;

     }

     return true;

   }

}
string.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="hello">Hello World, ex01!</string>

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

    <string name="Menu_Add">Add Item</string>

    <string name="Menu_Del">Delete Item</string>

    <string name="Menu_Update">Update Item</string>

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

</resources>

原创粉丝点击