android弹出菜单的例子

如果有空格,则Android弹出菜单在锚文本下方显示菜单,否则在锚文本上方显示菜单。如果你在弹出菜单之外单击,它将消失。
android.widget.PopupMenu是java.lang.Object类的直接子类。
Android弹出菜单示例
【android弹出菜单的例子】让我们看看如何在android中创建弹出菜单。
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.srcmini.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" />< /android.support.constraint.ConstraintLayout>

popup_menu.xml它包含三个项目,如下所示。它是在res / menu目录中创建的。
< ?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 android:id="@+id/two" android:title="Two"/> < item android:id="@+id/three" android:title="Three"/> < /menu>

活动类单击按钮时将显示弹出菜单。
package example.srcmini.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) { //Creating the instance of PopupMenu PopupMenu popup = new PopupMenu(MainActivity.this, button); //Inflating the Popup using xml file popup.getMenuInflater().inflate(R.menu.popup_menu, popup.getMenu()); //registering popup with 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(); //showing popup menu } }); //closing the setOnClickListener method } }

输出:
android弹出菜单的例子

文章图片
android弹出菜单的例子

文章图片
android弹出菜单的例子

文章图片

    推荐阅读