Android开发:Menu选项菜单

创建选项菜单的步骤:

为长宁等地区用户提供了全套网页设计制作服务,及长宁网站建设行业解决方案。主营业务为网站设计、成都网站设计、长宁网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

1、覆盖Activity的onCreateOptionsMenu(Menu menu)函数

2、调用menu的add()方法添加菜单项(MenuItem),调用MenuItem的setIcon()方法为菜单设置图标

=================我是一条分割线==========================================

public boolean onCreateOptionsMenu(Menu menu)

返回值:布尔值,表示是否显示该函数中设置的菜单

参数:Menu对象

onCreateOptionsMenu函数仅在第一次使用菜单时被调用一次

在这个函数可以通过Menu对象的add()方法添加菜单子项

重载:

1.

public abstract MenuItem add (CharSequence title)

指定菜单上的显示文字

这种方式添加的菜单是默认的垂直方式排列

public boolean onCreateOptionsMenu(Menu menu)
{
    menu.add("菜单");
    menu.add("菜单2");
     return true;
}

2.

public abstract MenuItem add(int groupId, int itemId, int order, int titleRes)

groudId:组ID,用以批量地对菜单子项进行处理和排序

itemId:子项ID,是每一个菜单子项的唯一标识

order:指定菜单子项在选项菜单中的排列顺序

titlerRes: 菜单标题的引用

3.

public abstract MenuItem add(int titleRes)

titlerRes: 菜单标题的引用,通过string.xml中添加

TitleRes

public boolean onCreateOptionsMenu(Menu menu)
{
      menu.add(R.string.titileRes);
      return true;
}

4.

public abstract MenuItem add(int groupId, int itemId, int order, CharSequence title)

这个是最常用的方法

groudId:组ID,用以批量地对菜单子项进行处理和排序

itemId:子项ID,是每一个菜单子项的唯一标识

order:指定菜单子项在选项菜单中的排列顺序

titler: 菜单标题

public boolean onCreateOptionsMenu(Menu menu)
{
   menu.add(0, ITEM, 0, "开始");
   menu.add(0, ITME2, 0, "退出");
   return true;
}

设置图标

itemAdd.setIcon(R.drawable.p1);

================还是一条分割线====================================

当菜单被选择时,可以通过覆盖Activity的onOptionsItemSeleted()方法来响应事件

于是可以酱紫,例子

public class ListTest extends Activity {
    private static final int click1 = Menu.FIRST;
    private static final int click2 = Menu.FIRST + 1;
      
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        super.onCreateOptionsMenu(menu);
        menu.add(0,click1,0,"戳我");
        menu.add(0,click2,0,"还戳我");
        return true;
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // TODO Auto-generated method stub
        switch (item.getItemId()) {
           case click1:
             setTitle("被戳了一下!");
             break;
           
           case click2:
             setTitle("又被戳了!");
             break;
           }
           return true;
    }  
}

分享名称:Android开发:Menu选项菜单
分享网址:http://ybzwz.com/article/pojghp.html