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();
    }
    }
  • 相关阅读:
    LiveCD 是指用光盘就能启动并运行的系统
    漂亮的代码配色方案
    编程语言基础知识梗概
    监听器在游戏开发中的应用消息回调
    游戏业现状
    PS 1.x 中的寄存器
    Irrlicht(鬼火引擎)中多设备的支持
    关于《3D管线导论》这本书
    D3DPOOL
    c++虚函数表探究
  • 原文地址:https://www.cnblogs.com/guochangxin/p/11573707.html
Copyright © 2011-2022 走看看