Ejemplo de menú emergente Android

En este artículo, vamos a aprender sobre menú emergente en Android . Este menú muestra por debajo o por encima del texto de anclaje. Si hace clic fuera del menú emergente , que no es visible.

1) del archivo XML: (activity_main)

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout >:android="http://schemas.android.com/apk/res/android"
>:app="http://schemas.android.com/apk/res-auto"
>:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.faraz.popupmenu_example.MainActivity">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Display Popup Menu"
tools:layout_editor_absoluteX="123dp"
tools:layout_editor_absoluteY="275dp" />
</android.support.constraint.ConstraintLayout>

2) XML del archivo: (menu_popup)

<?xml version="1.0" encoding="utf-8"?>
<menu >:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/one"
android:title="Android"/>
<item
android:id="@+id/two"
android:title="Java"/>
<item
android:id="@+id/three"
android:title="C/C++"/>
</menu>

3) Java Archive: (MainActivity.java)

package com.example.faraz.popupmenu_example;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.PopupMenu;
import android.widget.Toast;
public class MainActivity extends Activity {
Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//Creating the instance of PopupMenu
PopupMenu popup = new PopupMenu(MainActivity.this, btn);
//Inflating the Popup using xml file
popup.getMenuInflater().inflate(R.menu.menu_popup, popup.getMenu());
//registering popup with OnMenuItemClickListener
popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
public boolean onMenuItemClick(MenuItem item) {
Toast.makeText(MainActivity.this,"You Selected : " + item.getTitle(),Toast.LENGTH_SHORT).show();
return true;
}
});
popup.show();//showing popup menu
}
});
}
}

salida


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *