Android - Popup Menu

Android - Popup Menu 首页 / Android入门教程 / Android - Popup Menu

如果有空格,则Android弹出菜单在锚文本下方显示菜单,否则在锚文本上方显示菜单。如果您在弹出菜单之外单击,它将消失。

弹出菜单示例

让无涯教程看看如何在Android中创建弹出菜单。它只包含一个按钮。

File: activity_main.xml
<!--?xml version="1.0" encoding="utf-8"?-->
<android.support.constraint.constraintlayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="example.learnfk.com.popupmenu.MainActivity">
    <button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/button" android:text="Click" app:layout_constraintbottom_tobottomof="parent" app:layout_constraintleft_toleftof="parent" app:layout_constraintright_torightof="parent" app:layout_constrainttop_totopof="parent"></button>
</android.support.constraint.constraintlayout>

它包含三个项目,如下所示。它是在res/menu目录中创建的。

File: poupup_menu.xml
<!--?xml version="1.0" encoding="utf-8"?-->
<menu
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/one" android:title="One"></item>
    <item android:id="@+id/two" android:title="Two"></item>
    <item android:id="@+id/three" android:title="Three"></item>
</menu>

它显示按钮的弹出菜单单击。

链接:https://www.learnfk.comhttps://www.learnfk.com/android/android-popup-menu-example.html

来源:LearnFk无涯教程网

File: MainActivity.java
package example.learnfk.com.popupmenu;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.PopupMenu;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button = (Button) findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                //创建 PopupMenu 的实例
                PopupMenu popup = new PopupMenu(MainActivity.this, button);
                //使用 xml 文件弹出窗口
                popup.getMenuInflater().inflate(R.menu.popup_menu, popup.getMenu());

                //使用 OnMenuItemClickListener 注册弹出窗口
                popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
                    public boolean onMenuItemClick(MenuItem item) {
                        Toast.makeText(MainActivity.this,"You Clicked : " + item.getTitle(), Toast.LENGTH_SHORT).show();
                        return true;
                    }
                });

                popup.show();//显示弹出菜单
            }
        });//关闭 setOnClickListener 方法
    }
}

输出:

android popup menu example output 1android popup menu example output 2android popup menu example output 3

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

微服务架构核心20讲 -〔杨波〕

技术领导力实战笔记 -〔TGO鲲鹏会〕

设计模式之美 -〔王争〕

后端存储实战课 -〔李玥〕

Flink核心技术与实战 -〔张利兵〕

手把手带你搭建秒杀系统 -〔佘志东〕

云原生架构与GitOps实战 -〔王炜〕

运维监控系统实战笔记 -〔秦晓辉〕

手把手带你搭建推荐系统 -〔黄鸿波〕

好记忆不如烂笔头。留下您的足迹吧 :)