gpt4 book ai didi

java - 单击 imageView 时如何显示项目

转载 作者:行者123 更新时间:2023-12-02 10:03:21 25 4
gpt4 key购买 nike

我正在努力使用 ImageView 作为我需要的按钮,当我单击它时应该显示项目,就像我们单击微调器时相同的过程一样。

final View imageButton = findViewById(R.id.imageButton);
imageButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View view) {
// display a list of suggestions !
}
});

如果有人能帮助我解决这个问题,我将不胜感激。

最佳答案

首先,创建要显示的项目菜单,如下所示

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

<item
android:id="@+id/first"
android:title="First Menu Item"/>

<item
android:id="@+id/second"
android:title="Second Menu Item"/>

<item
android:id="@+id/third"
android:title="Third Menu Item"/>

</menu>

然后在您的 Activity 中创建一个 PopupMenu

PopupMenu pm = new PopupMenu(MainActivity.this, pBtn);
pm.getMenuInflater().inflate(R.menu.popup_menu, pm.getMenu());
pm.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getItemId()){
case R.id.first:
Toast.makeText(MainActivity.this, "Clicked First Menu Item", Toast.LENGTH_SHORT).show();
return true;

case R.id.second:
Toast.makeText(MainActivity.this, "Clicked Second Menu Item", Toast.LENGTH_SHORT).show();
return true;

case R.id.third:
Toast.makeText(MainActivity.this, "Clicked Third Menu Item", Toast.LENGTH_SHORT).show();
return true;
}

return true;
}
});
pm.show();

最后,您在点击监听器中调用此弹出菜单

编辑:

例如创建一个 String ArrayList

ArrayList<String> popupItems = new ArrayList<String>();

用数据填充数组列表

然后用这个数组列表初始化弹出菜单

popupMenu = new PopupMenu(this, imageButton); 

循环遍历数组,将值添加到弹出菜单

for (int i =0; i < popupItems.size(); i++)
popupMenu.getMenu().add(Menu.NONE, 1, Menu.NONE, popupItems.get(i))

关于java - 单击 imageView 时如何显示项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55472183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com