menu菜单

[1]添加菜单方式 通过一个布局 在res下 meun目录下创建一个布局

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

    <item
        android:id="@+id/action_settings1"
        android:orderInCategory="10"
        android:title="hahah"/>

    
     <item
        android:id="@+id/action_settings2"
        android:orderInCategory="11"
        android:title="hehe"/>
    
    
</menu>

[2]动态的添加

public boolean onCreateOptionsMenu(Menu menu) {
        
//        [1]getMenuInflater().inflate(R.menu.main, menu);
        
       //[2]添加菜单 
        menu.add(0, 1, 0, "后退");
        menu.add(0, 2, 0, "前进");
        return true;
    }

[3]点击menu弹出一个对话框 如果你想实现自己定义的view 效果重写onMeunOpened方法

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) {
        
//        [1]getMenuInflater().inflate(R.menu.main, menu);
        
       //[2]添加菜单 
        menu.add(0, 1, 0, "后退");
        menu.add(0, 2, 0, "前进");
        return true;
    }
    
    //想知道具体点击的是menu的哪个条目 需要重写这个方法
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case 1:
            
            System.out.println("后退");
            break;
            
    case 2:
        System.out.println("前进");
            break;

        default:
            break;
        }
        
        
        return super.onOptionsItemSelected(item);
    }
    
    //当点击menu按键的时候执行这个方法 
    @Override
    public boolean onMenuOpened(int featureId, Menu menu) {
        
        //弹出一个对话框 
        AlertDialog.Builder builder = new Builder(this);
        builder.setTitle("警告");
        builder.setMessage("您的网络异常");
        builder.setPositiveButton("确定", new OnClickListener() {
            
            @Override
            public void onClick(DialogInterface dialog, int which) {
                
                System.out.println("点了确定");
            }
        });
        builder.setNegativeButton("取消", new OnClickListener() {
            
            @Override
            public void onClick(DialogInterface dialog, int which) {
                //点击取消执行 
                System.out.println("取消");
                
            }
        });
        //使用对话框一定要记得show出来 
        builder.show();
        
        return false;
    }
    
    //点击按钮跳转TestActivity
    public void click(View v) {
        Intent intent = new Intent(this,TestActity.class);
        startActivity(intent);
        
    }

}

 

转载于:https://www.cnblogs.com/xufengyuan/p/6125951.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值