菜单的添加

1.线性布局 添加按钮。

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     xmlns:tools="http://schemas.android.com/tools"
 4     android:layout_width="match_parent"
 5     android:layout_height="match_parent"
 6  tools:context="com.example.administrator.android.MainActivity"
 7 android:orientation="vertical">
 8
 9     <Button
10         android:layout_width="match_parent"
11         android:layout_height="wrap_content"
12         android:text="按钮"
13         android:id="@+id/bt_1"/>
14     <Button
15         android:layout_width="match_parent"
16         android:layout_height="wrap_content"
17         android:text="上下文菜单按钮"
18         android:id="@+id/bt_2"/>
19 </LinearLayout>

注意:

1.android:orientation="vertical" 在线性布局里必须添加。

2.添加程序运行java代码。

  1 package com.example.administrator.android;
  2
  3 import android.support.v7.app.AppCompatActivity;
  4 import android.os.Bundle;
  5 import android.view.ContextMenu;
  6 import android.view.Menu;
  7 import android.view.MenuInflater;
  8 import android.view.MenuItem;
  9 import android.view.SubMenu;
 10 import android.view.View;
 11 import android.widget.Button;
 12 import android.widget.Toast;
 13
 14 public class MainActivity extends AppCompatActivity {
 15
 16     Button bt_1;
 17     Button bt_2;
 18
 19
 20     @Override
 21     protected void onCreate(Bundle savedInstanceState) {
 22         super.onCreate(savedInstanceState);
 23         setContentView(R.layout.activity_main);
 24
 25         bt_1 = (Button)findViewById(R.id.bt_1);
 26         bt_2 = (Button)findViewById(R.id.bt_2);
 27
 28
 29         //给组件添加上下文菜单
 30         bt_2.setOnCreateContextMenuListener(this);
 31 //        //添加长按监听器
 32 //        bt_2.setOnLongClickListener(new View.OnLongClickListener() {
 33 //            @Override
 34 //            public boolean onLongClick(View v) {
 35 //                Toast.makeText(MainActivity.this, "按钮被长按", Toast.LENGTH_SHORT).show();
 36 //                return true;//后面不再处理
 37 //            }
 38 //        });
 39         //点击
 40         bt_1.setOnClickListener(new View.OnClickListener() {
 41             @Override
 42             public void onClick(View v) {
 43
 44                 Toast.makeText(MainActivity.this, "按钮被点击", Toast.LENGTH_SHORT).show();
 45             }
 46         });
 47         //长按
 48         bt_1.setOnLongClickListener(new View.OnLongClickListener() {
 49             @Override
 50             public boolean onLongClick(View v) {
 51
 52                 Toast.makeText(MainActivity.this, "按钮被长按", Toast.LENGTH_SHORT).show();
 53                 //事件是否已经被消费
 54                 return true;
 55             }
 56         });
 57     }
 58     //重写创建上下文菜单的方法
 59     @Override
 60     public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
 61         super.onCreateContextMenu(menu, v, menuInfo);
 62         //代码模式(java)
 63         menu.add(1, 0, 1, "字体大小");
 64         menu.add(1,1,2,"背景颜色");
 65         //添加子菜单
 66         SubMenu sm = menu.addSubMenu(1, 2, 3, "子菜单");
 67         sm.add(2,21,0,"子菜单1");
 68         sm.add(2,22,1,"子菜单2");
 69         //加载文件
 70         MenuInflater m = getMenuInflater();
 71         m.inflate(R.menu.test3_menu,menu);
 72     }
 73
 74     @Override
 75     public boolean onContextItemSelected(MenuItem item) {
 76
 77         Toast.makeText(MainActivity.this, "上下文菜单的标题:"+item.getTitle(), Toast.LENGTH_SHORT).show();
 78
 79         return super.onContextItemSelected(item);
 80     }
 81
 82     //给activity 添加选项菜单
 83     //重写
 84     @Override
 85     public boolean onCreateOptionsMenu(Menu menu) {
 86 //        //添加菜单
 87 //        menu.add(1,1,0,"添加");
 88 //        menu.add(1,2,2,"修改");
 89 //        menu.add(1,3,1,"删除");
 90
 91         //加载菜单文件方式
 92         //1-获得菜单加载器
 93         MenuInflater m = getMenuInflater();
 94
 95         //2-加载菜单文件 1)菜单文件 2)当前菜单
 96         m.inflate(R.menu.test3_menu,menu);
 97
 98         return super.onCreateOptionsMenu(menu);
 99     }
100
101     @Override
102     public boolean onOptionsItemSelected(MenuItem item) {
103         Toast.makeText(MainActivity.this, "菜单项的id="+item.getItemId()
104                 +"菜单项的Title"+item.getTitle(), Toast.LENGTH_SHORT).show();
105         if (item.getItemId()==R.id.me_1)
106         {
107             Toast.makeText(MainActivity.this, "删除被执行", Toast.LENGTH_SHORT).show();
108         }
109         else if (item.getItemId()==R.id.me_2)
110         {
111             Toast.makeText(MainActivity.this, "修改被执行", Toast.LENGTH_SHORT).show();
112         }
113         return super.onOptionsItemSelected(item);
114     }
115 }

3。添加目录代码程序

1 <?xml version="1.0" encoding="utf-8"?>
2 <menu xmlns:android="http://schemas.android.com/apk/res/android">
3
4     <item android:id="@+id/me_1" android:title="删除"/>
5     <item android:id="@+id/me_2" android:title="修改"/>
6 </menu>

程序截图如下:

【主界面】

【长按按钮弹出上下文菜单】

【单击子菜单弹出的上下文菜单和提示】

【选择右上角的menu菜单后弹出的对话框】

时间: 2024-09-28 04:40:25

菜单的添加的相关文章

VS2013点击右键菜单命令添加xml元素插件开发

一.选择Visual Studio Package模板建立插件项目 由于此功能需要在右键菜单上添加命令,所以选择Visual Studio Package模板,根据模板向导步骤插件项目,在Select VSPackage Options步骤的时候选择Menu Command选项,如图-1所示: 图-1 接下来是设置命令的名称,如图-2所示 图-2 修改Command name的值,将其设置为我们要添加到右键菜单时的名称.Command ID可选择是否修改,值是一个十六进制数,由于标识我们的添加的

Delphi 在系统菜单中添加菜单项

1 unit Unit001; 2 3 interface 4 5 uses 6 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 7 Vcl.Controls, Vcl.Forms, Vcl.Dialogs; 8 9 type 10 TForm1 = class(TForm) 11 procedure FormCreate(Sender:TObject

Win10如何在右键菜单中添加“显示/隐藏文件”选项?

随着Win10系统的发布,一些用户已经升级到Win10系统,我们在使用Win10系统时经常会找不到所需的文件,也不知道怎么回事,估计是被隐藏起来了.遇到这样的问题要如何解决?那Win10如何在右键菜单中添加“显示/隐藏文件”选项呢?现在小编就和大家说一下Win10在右键菜单中添加“显示/隐藏文件”选项的方法. 具体步骤如下: 1.打开“此电脑”,点击工具栏中的[查看]按钮: 2.在右侧通过勾选或去掉[皇冠hg0088]即可打开或关闭 显示隐藏文件了. Win10在右键菜单中添加“显示/隐藏文件”

python实现应用程序在右键菜单中添加打开方式

最近项目组开发的一个小工具想要在右键菜单中添加打开方式,以有道云笔记为例进行了需求拆解和代码编写 1.需求拆解: 如何实现手动添加右键菜单的打开方式: Step1:打开注册表编辑器,Win+R->输入 "regedit" Step2:在HKEY_CLASSES_ROOT/*/shell (或者HKEY_LOCAL_MACHINE/SOFTWARE/Classes/*/shell ,两个目录是一样的) 添加一个key:YNote,然后在该项中新建项command,然后再编辑字符串,

wuzhicms后台菜单的添加

红色部分都是从菜单管理处添加而来.只有少数是自定义的. 开发一个模块,首先就是菜单的管理.而,不需要的功能也可以在在菜单管理处隐藏或删除. 添加菜单:

为下拉式菜单(DropDownList)添加第一个选项

很多方法可以为为下拉式菜单(DropDownList)添加第一个选项,下面是Insus.NET小结了几个方法,仅供参考: Html code: <body>    <form id="form1" runat="server">    <div>        <asp:DropDownList ID="DropDownList1" runat="server">        

Android学习----------长按列表项弹出菜单,给菜单项添加事件,获取上下文

这里是先显示一个listview,长按listview的一个列表项,弹出一个菜单来,菜单有两个条目, "更新该条"和"删除该条",并且这两条都有监听事件,整体就像微信好友对话操作一样. 其中菜单项有一个获取上下文的操作:AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); 这句也是用于列表项的. 具体代码如下: protected void onCreate(Bundle

android菜单创建的两种方式和菜单项添加图标

    菜单创建的两种方式:     1.在xml文件中创建菜单: 具体代码: <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context="com.xunfang.menucreate.MainActivity" > //此处创建子菜单 <

[Asp.net]Calendar+JqueryUi实现日程管理(右键菜单,添加,编辑,删除,源码)

引言 出差终于回来了,这篇文章算是这个月的博客的开篇吧. 上篇文章:[Asp.net]Calendar+JqueryUi实现日程管理——添加日程 上篇文章主要贴了一些该项目的界面,这里面,将主要代码也贴出来分享一下. 项目 数据库设计 1 USE [Wolfy.Schedule] 2 GO 3 4 /****** Object: Table [dbo].[TB_Schedule] Script Date: 2014/7/5 16:30:00 ******/ 5 SET ANSI_NULLS ON

001在系统菜单中添加菜单项

技术要点: 为了操作系统菜单,先要获取系统菜单指针,可以通过GetSystemMenu函数实现,然后利用菜单指针添加一个菜单项,最后在对话框OnSysCommand方法中处理菜单项的命令. GetSystemMenu方法用于获取一个系统菜单的指针,语法如下: CMenu* GetSystemMenu(BOOL bRect); bRect:FALSE时,该方法返回当前正在使用的系统菜单:TRUE时,该方法将重新设置系统菜单到默认状态,并且方法返回值不可用. 实现过程: (1)新建一个基于对话框的应