首页 > 学院 > 开发设计 > 正文

弹出菜单 PopupMenu 的使用

2019-11-06 09:39:42
字体:
来源:转载
供稿:网友

这次是一个弹出菜单,当点击按钮或者文字时,在下方弹出一个菜单。PopupMenu是在android sdk3.0版本以后加入了一个特殊效果。他可以在任何一个View显示。 源码下载 下面看一下效果图: 这里写图片描述

用法: 首先在res目录新建menu目录,然后在menu目录下新建menu.xml文件,具体代码如下:

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/add" android:title="@string/add"/> <item android:id="@+id/edit" android:title="@string/edit"/> <item android:id="@+id/delete" android:title="@string/delete"/></menu>

res/values/strings.xml文件:

<resources> <string name="app_name">TestPopupMenu</string> <string name="delete">删除</string> <string name="add">添加</string> <string name="edit">编辑</string></resources>

最后修改MainActivity,解释已在代码中注释就不多说了:

public class MainActivity extends AppCompatActivity {Button button; @Override PRotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //找到button对象 button= (Button) findViewById(R.id.click_me); //设置button监听器 button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //实例一个menu对象 PopupMenu pMenu=new PopupMenu(MainActivity.this,v); //设置PopupMenu对象的布局 pMenu.getMenuInflater().inflate(R.menu.menu,pMenu.getMenu()); //设置pMenu菜单的单击监听事件 pMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { //当点击时弹出被点击象标题 Toast.makeText(getBaseContext(),item.getTitle(),Toast.LENGTH_LONG).show(); return true; } }); //最后调用show方法,显示菜单 pMenu.show(); } }); }}

我的更多学习笔记请访问:www.xiaob.tech


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表