Menu 菜单之OptionsMenu

1.菜单的分类
 1.1 Options menu 选项菜单  功能主要针对activity
   <menu xmlns:android="http://schemas.android.com/apk/res/android" >
       <group>  可选项
         <item>
         </item>
       </group>
   </menu>
  子菜单  item标签的中间嵌套menu标签
  1.子菜单不能显示图标

  2.子菜单只能有一级



1.2 我们也可以在代码中添加


2,我们在布局中添加menu


<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="@string/action_settings"/>
    <item
        android:id="@+id/action_add"
        android:icon="@drawable/ic_launcher"
        android:orderInCategory="1"
        android:showAsAction="never"
        android:title="添加"/>
<!-- 
   android:id="@+id/action_add"   设置menuitem的唯一的标示资源id
   android:icon="@drawable/ic_launcher" 设置menuitem的图标
   android:title="添加" 设置menuitem的每一项中的文本内容
   android:orderInCategory="100" 设置菜单的显示顺序  一般会按照值的生序排列
 -->
</menu>

代码的写法:
package com.qianfeng.optionsmenu;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}
	/**
	 * 当选项菜单被创建时回调的方法
	 */
	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		//获取MenuInflater对象然后调用加载xml文件的inflate方法  
		getMenuInflater().inflate(R.menu.main, menu);
		/*第一个参数标示菜单项的分组id
		 * 第二个参数 表示菜单项的资源id
		 * 第三个参数 表示菜单项的显示顺序
		 * 第四个参数 表示菜单的标题
		 */
		menu.add(Menu.NONE, 2, 3, "删除");
		menu.add(Menu.NONE, 1, 0, "修改");
		return true;
	}
	/**
	 * 当选项菜单中的某一项被点击的时候回调的
	 * 选项菜单中的每一项在代码中都是MenuItem对象
	 */
	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {//获取当前选择的菜单项的id
		case R.id.action_add:
			Toast.makeText(MainActivity.this,item.getTitle(), Toast.LENGTH_SHORT).show();
			break;
		case 2:
			Toast.makeText(MainActivity.this,item.getTitle(), Toast.LENGTH_SHORT).show();
			break;
		}
		return super.onOptionsItemSelected(item);
	}

}















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值