layout.xml

  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:paddingBottom="@dimen/activity_vertical_margin"
  6. android:paddingLeft="@dimen/activity_horizontal_margin"
  7. android:paddingRight="@dimen/activity_horizontal_margin"
  8. android:paddingTop="@dimen/activity_vertical_margin"
  9. tools:context=".MainActivity" >
  10.  
  11. <Button
  12. android:id="@+id/button"
  13. android:layout_width="wrap_content"
  14. android:layout_height="wrap_content"
  15. android:text="点击弹出PopupMenu菜单"
  16. android:layout_centerInParent="true"
  17. android:onClick="onOpenPopup"
  18. android:textSize="20sp"/>
  19.  
  20. </RelativeLayout>

menu.xml

  1. <menu xmlns:android="http://schemas.android.com/apk/res/android" >
  2.  
  3. <item
  4. android:id="@+id/popoMenu1"
  5. android:title="菜单一"/>
  6. <item
  7. android:id="@+id/popoMenu2"
  8. android:title="菜单二"/>
  9. </menu>

main.java

  1. package com.example.day10_popumenu;
  2.  
  3. import android.os.Bundle;
  4. import android.app.Activity;
  5. import android.view.Menu;
  6. import android.view.MenuItem;
  7. import android.view.View;
  8. import android.widget.Button;
  9. import android.widget.PopupMenu;
  10. import android.widget.Toast;
  11. import android.widget.PopupMenu.OnMenuItemClickListener;
  12. import android.widget.TextView;
  13. /**
  14. * Popupmenu 泡泡菜单,菜单放在对应的控件下面,不能自动触发
  15. * 1.PopuMenu在3.0以后的版本使用
  16. * 2.创建
  17. *
  18. * @author my
  19. *
  20. */
  21. public class MainActivity extends Activity {
  22.  
  23. private Button button;
  24.  
  25. @Override
  26. protected void onCreate(Bundle savedInstanceState) {
  27. super.onCreate(savedInstanceState);
  28. setContentView(R.layout.activity_main);
  29. button = (Button) findViewById(R.id.button);
  30.  
  31. }
  32. public void onOpenPoPup(View v){
  33. /**
  34. * 创建Popupmenu对象,参数2表示将popummenu放大到对应的控件下面
  35. */
  36. PopupMenu popupMenu = new PopupMenu(MainActivity.this, button);
  37. //将xml的menu加载到popupMenu中
  38. popupMenu.getMenuInflater().inflate(R.menu.main, popupMenu.getMenu());
  39. //展示--点击menuitem选项后,会自动隐藏
  40. popupMenu.show();
  41. //为popupMenu 设置点击事件
  42. popupMenu.setOnMenuItemClickListener(new OnMenuItemClickListener() {
  43.  
  44. @Override
  45. public boolean onMenuItemClick(MenuItem item) {
  46. Toast.makeText(MainActivity.this, item.getItemId(), 0).show();
  47. return true;
  48. }
  49. });
  50. }
  51.  
  52. }

Android_Menu_PopupMenu的更多相关文章

随机推荐

  1. Magento 处理方法

    1.在模板中添加图片: <div id="header-image" class="skip-image"> <img src="& ...

  2. powerdesign的license key到期,解决办法

    到2013年9月24日为止我把这文件覆盖了都是行的!不行的请留言说明下! 下载地址:powerdesigner license key 15.1 找到安装目录,直接覆盖就行了!

  3. CDH 5.5.1 Yum源服务器搭建

    CDH 5.5.1 Yum源服务器搭建 下载Cloudera Repo #下载资源仓库repo wget https://archive.cloudera.com/cdh5/redhat/6/x86_ ...

  4. leetcode@ [49] Group Anagrams (Hashtable)

    https://leetcode.com/problems/anagrams/ Given an array of strings, group anagrams together. For exam ...

  5. leetcode@ [300] Longest Increasing Subsequence (记忆化搜索)

    https://leetcode.com/problems/longest-increasing-subsequence/ Given an unsorted array of integers, f ...

  6. poj 1704 阶梯博弈

    转自http://blog.sina.com.cn/s/blog_63e4cf2f0100tq4i.html 今天在POJ做了一道博弈题..进而了解到了阶梯博弈...下面阐述一下我对于阶梯博弈的理解. ...

  7. HDU-4687 Boke and Tsukkomi 带花树,枚举

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4687 题意:给一个无向图,求所有的最大匹配的情况所不包含的边.. 数据比较小,直接枚举边.先求一次最大 ...

  8. 如何搭建ss服务器

    由于是Red Hat系统,缺少epel包,需要先安装该包才能安装python-pip,命令如下: rpm -iUvh http://dl.fedoraproject.org/pub/epel/7/x8 ...

  9. 关于 Java 对象序列化您不知道的 5 件事

    数年前,当和一个软件团队一起用 Java 语言编写一个应用程序时,我体会到比一般程序员多知道一点关于 Java 对象序列化的知识所带来的好处. 关于本系列 您觉得自己懂 Java 编程?事实上,大多数 ...

  10. React Native学习笔记-1:JSC profiler is not supported.(转载)

    运行react-native中Example下的UIEXPLORER Project 遇到虾面报错: 2016-03-21 14:12:18.941 [trace][tid:com.facebook. ...