第一章(在活动中使用Menu)

在活动中使用Menu

步骤:

  1. 在res目录下新建一个menu文件夹,接着在该文件夹下再新建一个名叫main的菜单文件(右击menu文件夹->New->Menu resource file)文件名输入main,点击ok
  2. 在main.xml中添加如下代码:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item 
    android:title="Add"
    android:id="@+id/add_item"
    />
<item 
    android:title="Remove"
    android:id="@+id/remove_item"/>
</menu>

这里创建了两个菜单项,id指定唯一的标识符,title给菜单项指定一个名称
3.接着回到activity重写onCreateOptionMenu()方法

 @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater menuInflater=getMenuInflater();
        menuInflater.inflate(R.menu.main,menu);
        return true;//返回false menu不会出现
    }

通过getMenuInflater()方法能够获得MenuInflater对象,再调用它的inflate方法就可以给当前活动创建菜单了,第一个参数是指定通过那个资源文件创建菜单,第二个参数是指定我们的菜单项将添加到哪一个Menu对象当中,直接传入onCreateOptionsMenu()里的参数

添加点击事件

在activity中重写onOptionsItemSelected()方法:

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()){

            case R.id.add_item:
                Toast.makeText(this,"你点击了Add",Toast.LENGTH_SHORT).show();
                break;
            case R.id.remove_item:
                Toast.makeText(this,"你点击了Remove",Toast.LENGTH_SHORT).show();
                break;
            default:
        }
        return true;
    }//当点击某个item后,该item会根据当前构造的Activity去找这个方法,然后传入该item

大功告成

原创文章 43 获赞 6 访问量 803

猜你喜欢

转载自blog.csdn.net/qq_34088913/article/details/105946762