当前位置: 首页 > news >正文

Android学习笔记之PopupMenu弹出菜单


(1)布局文件:用于弹出菜单的处罚button:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="96dp"
        android:layout_marginTop="111dp"
        android:onClick="showPopup"
        android:text="弹出菜单" />

</RelativeLayout>

(2)res-menu目录下的main.xml文件:

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

    <item
        android:id="@+id/open"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="@string/open"/>
    <item
        android:id="@+id/close"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="@string/close"/>

</menu>

(3)类的文件:

package com.example.menu_popupmenu;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.PopupMenu;

public class MainActivity extends Activity {

	private Button button;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}

	public void showPopup(View view) {
		PopupMenu popupMenu = new PopupMenu(MainActivity.this, view);
		popupMenu.getMenuInflater().inflate(R.menu.main, popupMenu.getMenu());
		popupMenu.show();
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}



相关文章:

  • Android学习笔记之Menu的ShowAsAction属性的设置
  • 学习数据结构与算法分析如何帮助您成为更优秀的开发人员
  • Android学习笔记之数据的共享存储SharedPreferences
  • CMD命令下访问Oracle数据库
  • Android学习笔记之数据的内部存储方式实习数据的读写、存储到Cache实现读写
  • JSP详细解析
  • Android学习笔记之数据的Sdcard存储方法及操作sdcard的工具类
  • Construct Binary Tree from Inorder and Postorder Traversal
  • Android学习笔记之Fragment的两种使用方法
  • Android学习笔记之SQLite数据库的使用及常用的增删改查方法、无sql语句的DRUD方法汇总
  • codeforces 455C 并查集
  • Android学习笔记之使用意图打开内置应用程序组件
  • java web sql注入测试(3)---现象分析
  • Android学习笔记之广播意图及广播接收者MyBroadcastReceiver、Broadcast
  • 一些简单的shell脚本实例 转
  • 【5+】跨webview多页面 触发事件(二)
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • gulp 教程
  • leetcode386. Lexicographical Numbers
  • Logstash 参考指南(目录)
  • SQLServer插入数据
  • ViewService——一种保证客户端与服务端同步的方法
  • 初识MongoDB分片
  • 缓存与缓冲
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 那些被忽略的 JavaScript 数组方法细节
  • 物联网链路协议
  • 写给高年级小学生看的《Bash 指南》
  • 学习Vue.js的五个小例子
  • 一个项目push到多个远程Git仓库
  • 优秀架构师必须掌握的架构思维
  • Python 之网络式编程
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • # 达梦数据库知识点
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • (libusb) usb口自动刷新
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (力扣)1314.矩阵区域和
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (新)网络工程师考点串讲与真题详解
  • (一)SpringBoot3---尚硅谷总结
  • (一)硬件制作--从零开始自制linux掌上电脑(F1C200S) <嵌入式项目>
  • (转)一些感悟
  • (转)用.Net的File控件上传文件的解决方案
  • .equals()到底是什么意思?
  • .NET 3.0 Framework已经被添加到WindowUpdate
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • @converter 只能用mysql吗_python-MySQLConverter对象没有mysql-connector属性’...
  • [.net]官方水晶报表的使用以演示下载