zoukankan      html  css  js  c++  java
  • Android 点击按钮弹出菜单

    效果图:

    1、创建menu文件夹,新建main.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="添加" />
    <item
    android:id="@+id/remove"
    android:title="删除" />
    <item
    android:id="@+id/share"
    android:title="分享" />
    </menu>

    2、在MainActivity 中
    public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    final ImageView imageVie = findViewById(R.id.main_img);
    imageVie.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
    showPopupMenu(imageVie);
    }
    });
    }

    private void showPopupMenu(View view) {
    // View当前PopupMenu显示的相对View的位置
    PopupMenu popupMenu = new PopupMenu(this, view);
    // menu布局
    popupMenu.getMenuInflater().inflate(R.menu.main, popupMenu.getMenu());
    // menu的item点击事件
    popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
    @Override
    public boolean onMenuItemClick(MenuItem item) {
    Toast.makeText(getApplicationContext(), item.getTitle(), Toast.LENGTH_SHORT).show();
    return false;
    }
    });
    // PopupMenu关闭事件
    popupMenu.setOnDismissListener(new PopupMenu.OnDismissListener() {
    @Override
    public void onDismiss(PopupMenu menu) {
    Toast.makeText(getApplicationContext(), "关闭PopupMenu", Toast.LENGTH_SHORT).show();
    }
    });

    popupMenu.show();
    }
    }
  • 相关阅读:
    python列表--查找集合中重复元素的个数
    python3-打印一个进度条
    python3-sys模块
    python3-字符串操作
    python3-深浅复制
    python3-os模块
    接口和抽象类有什么区别
    集合知识
    面向对象的特征有哪些方面
    javadoc时候乱码-编码 GBK 的不可映射字符
  • 原文地址:https://www.cnblogs.com/guochangxin/p/11573707.html
Copyright © 2011-2022 走看看