zoukankan      html  css  js  c++  java
  • Android Studio之菜单栏制作 (三)

    选项菜单
    1、定义所需要的全局变量

    2、在函数onCreate(Bundle savedInstanceState)函数里获取上面定义的全局变量的资源

    上面两步是必写的,下面的步骤不介绍了。

    3、重写Activity的onCreateOptionsMenu(Menu menu)方法,在该方法中调用Menu对象来添加菜单或者子菜单。

    4、需要应用程序响应菜单项的点击事件,可重写Activity的onOptionsItemSelected(MenuItem item)方法,调用item.getItemId()获得被点击菜单项的ID,做出不同的响应

    java代码:

    package com.example.myapplication;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuInflater;
    import android.view.MenuItem;
    import android.widget.Button;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class MainActivity extends AppCompatActivity {
        //定义按钮的全局变量
        private Button button;
        private TextView textView;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            // 绑定按钮的资源(利用id找到xml文件中的按钮)
            button = findViewById(R.id.button);
            textView = findViewById(R.id.textView);
        }
    
        @Override//重写获取菜单项的方法
        public boolean onCreateOptionsMenu(Menu menu) {
            MenuInflater inflater=getMenuInflater();//获取菜单Inflater,MenuInflater加载menu布局文件
            inflater.inflate(R.menu.menu1,menu);//通过inflate获取菜单资源
            return true;
        }
        @Override//菜单项被点击时的逻辑处理
        public boolean onOptionsItemSelected(MenuItem item) {
            switch (item.getItemId()){
                case R.id.one1:
                    Toast.makeText(MainActivity.this,"我是一",Toast.LENGTH_LONG).show();
                    break;
                case R.id.one2:
                    Toast.makeText(MainActivity.this,"我是二",Toast.LENGTH_LONG).show();
                    break;
                case R.id.one3:
                    Toast.makeText(MainActivity.this,"我是三",Toast.LENGTH_LONG).show();
                    break;
                case R.id.one4:
                    Toast.makeText(MainActivity.this,"我是四",Toast.LENGTH_LONG).show();
                    break;
                default:
                    return true;
            }
            return true;
        }
    
    }

    效果图如下:

    在这里插入图片描述

  • 相关阅读:
    WPF 复制和粘贴
    WPF控件模拟双击事件
    WPF获取鼠标当前位置
    user32.dll
    C# 根据IP地址获取城市
    WPF 动态布局Grid
    手机自动化测试:Appium源码分析之跟踪代码分析五
    手机自动化测试:appium源码分析之bootstrap三
    手机自动化测试:appium源码分析之bootstrap二
    手机自动化测试:appium源码分析之bootstrap一
  • 原文地址:https://www.cnblogs.com/wangdayang/p/14912982.html
Copyright © 2011-2022 走看看