下面带有滚动和编辑文本的弹出菜单
popup menu with scroll and edittext below
我的屏幕上有一个按钮,该按钮位于屏幕某处(靠近顶部)。
我想点击按钮得到这个结果:
按钮 正下方 打开一个菜单,您可以选择文本(从列表中)或编写我自己的文本(其中写有 "type here..")。
我有这个弹出菜单:
PopupMenu popupMenu = new PopupMenu(this, buttonChooseText);
for (int i = 0; i < listDefaultText.size(); ++i) {
// the list is from String type and contains "text1" and so on
popupMenu.getMenu().add(listDefaultText.get(i);
}
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getTitle().toString()) {
case "Text1" :
//execute "text1" action
break;
case "Text2" :
//execute "text2" action
break;
}
return false;
}
});
popupMenu.show();
那么我怎样才能得到这个结果呢?
PopupMenu
可能无法满足您的要求,因为它在包含菜单项以外的视图方面没有提供太多灵活性。使用PopupWindow instead as it supports custom layout. 就是一个例子。
我的屏幕上有一个按钮,该按钮位于屏幕某处(靠近顶部)。
我想点击按钮得到这个结果: 按钮 正下方 打开一个菜单,您可以选择文本(从列表中)或编写我自己的文本(其中写有 "type here..")。
我有这个弹出菜单:
PopupMenu popupMenu = new PopupMenu(this, buttonChooseText);
for (int i = 0; i < listDefaultText.size(); ++i) {
// the list is from String type and contains "text1" and so on
popupMenu.getMenu().add(listDefaultText.get(i);
}
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getTitle().toString()) {
case "Text1" :
//execute "text1" action
break;
case "Text2" :
//execute "text2" action
break;
}
return false;
}
});
popupMenu.show();
那么我怎样才能得到这个结果呢?
PopupMenu
可能无法满足您的要求,因为它在包含菜单项以外的视图方面没有提供太多灵活性。使用PopupWindow instead as it supports custom layout.