zoukankan      html  css  js  c++  java
  • 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);
            
        }
    
    }
  • 相关阅读:
    Android通过包名启动应用程序
    android 通过反射方法获取状态栏高度
    Android在输入法界面监听按键(以返回键为例)
    Android主动弹出输入法
    Android使用内部类自定义控件
    Android中ListView列表Item的圆角效果实现
    Android中关于系统Dialog无法全屏的问题
    Dart学习记录(五)
    Dart学习记录(四)—— 库
    Dart学习记录(三)—— 泛型
  • 原文地址:https://www.cnblogs.com/xufengyuan/p/6125951.html
Copyright © 2011-2022 走看看