您的位置:首页 > 产品设计 > 产品经理

弹出菜单 PopupMenu 的使用

2017-02-28 14:06 375 查看
这次是一个弹出菜单,当点击按钮或者文字时,在下方弹出一个菜单。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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: