Maybe someone met, for a long time I wanted to know how to do "pop-up" windows in android, as I understand this idea appears on top of the main layout, but it has coordinates on the screen depending on its element.

Example: alt text

    3 answers 3

    In order to display a pop-up menu, you must use the class PopupMenu
    A simple example:

     public class PopupExample extends Activity { Button button; PopupMenu popupMenu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_activity); button = (Button) findViewById(R.id.button); popupMenu = new PopupMenu(this, button); popupMenu.inflate(R.menu.popup_menu); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { popupMenu.show(); } }); popupMenu.setOnMenuItemClickListener( new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { switch (item.getItemId()) { case R.id.menu_1: // дСйствиС ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Π½Π° ΠΏΡƒΠ½ΠΊΡ‚ 1 break; case R.id.menu_2: // дСйствиС ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Π½Π° ΠΏΡƒΠ½ΠΊΡ‚ 2 break; case R.id.menu_3: // дСйствиС ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Π½Π° ΠΏΡƒΠ½ΠΊΡ‚ 3 break; } return true; } }); } } 

    res / menu / popup_menu.xml

     <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/menu_1" android:title="Menu 1" /> <item android:id="@+id/menu_2" android:title="Menu 2"/> <item android:id="@+id/menu_3" android:title="Menu 3"/> </menu> 

      Hello! Try to find the answer to your question here .

      • Not. This is not that - AndroidDev

      If it's still interesting, then this can be done using PopupWindow.