首先在res中新建menu文件夹,新建文件menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/item1"
android:orderInCategory="100"
android:title="Item1"/>
<item
android:id="@+id/item2"
android:orderInCategory="101"
android:title="Item2"/>
<item
android:id="@+id/item3"
android:orderInCategory="102"
android:title="Item3"/>
</menu>
ImageButton btn = (ImageButton) findViewById(R.id.select);
final EditText et = findViewById(R.id.editText);
btn .setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
PopupMenu pm = new PopupMenu(MainActivity.this, et);
pm.getMenuInflater().inflate(R.menu.menu, pm.getMenu());
pm.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
et.setText(item.getTitle());
return false;
}
});
pm.show();
}
});
实现效果如下: