在android中,当我按了listview中的一个子项时,利用ContextMenu弹出菜单,那怎么获取这个子项的数据呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在android中,当我按了listview中的一个子项时,利用ContextMenu弹出菜单,那怎么获取这个子项的数据呢?相关的知识,希望对你有一定的参考价值。

这个listview的adapter中每一个子项都有map存储着键值对,那如何根据点击不同的子项获取到这些键值对呢?我想调用其中的一些数据,急求 T T
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
int position = info.position;
我用这样拿到了对应的子项id,然后如何取得其中的数据呢?

参考技术A 不要这样拿 我一般这么拿
listview.setOnItemClickListener(new OnItemClickListener()
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3)
@SuppressWarnings("unchecked")
HashMap<String, Object> map = (HashMap<String, Object>) arg0
.getItemAtPosition(arg2);
这个map就是你点击的那项的数据追问

这就是说arg0就是我们的那个adapter,然后(HashMap) arg0
.getItemAtPosition(arg2)这个东西就是等于我们存进去的那个list对应的每一项map?

追答

是的 如果当初是map.put("text","111")

那么这里获取就只需要(String)map.get("text")就能得到这个存进去的值111了

本回答被提问者采纳
参考技术B 最简单的方法是增加个变量 把子项的index传给变量,用index去数据源中取数据呗

当我按 Ctrl + S 或从文件菜单关闭项目时,Android Studio 挂起

【中文标题】当我按 Ctrl + S 或从文件菜单关闭项目时,Android Studio 挂起【英文标题】:Android Studio hangs when I press Ctrl + S or I close the project from File menu 【发布时间】:2019-05-10 12:31:42 【问题描述】:

Android Studio 3.2.1 每次按 Control S(由于我的旧习惯)或按文件菜单中的关闭项目时都会挂起。

Studio 冻结,如果我最小化和最大化窗口,Studio 会无限显示空白屏幕。

我在带有第 7 代 i5 处理器和 8gb 内存的 64 位 windows 10 操作系统上使用它。

【问题讨论】:

如果解决时间过长或者烦人,可以尝试重新安装android studio 【参考方案1】:

有同样的问题。它有帮助:

    将工作室的配置文件文件夹重命名,例如,c:\Users\.AndroidStudio3.4 为 .AndroidStudio3.4_bak 运行 Android Studio 首次启动时,会询问是否从 .AndroidStudio3.4_bak 导入设置 选择是

您将获得带有您的设置的 Android Studio,并清除其他临时数据。

【讨论】:

以上是关于在android中,当我按了listview中的一个子项时,利用ContextMenu弹出菜单,那怎么获取这个子项的数据呢?的主要内容,如果未能解决你的问题,请参考以下文章

Android ListView清除

未创建 Android listview 内容视图

listView 行中的播放/停止按钮

Android listview edittext过滤空间按钮?

Android中微信朋友圈listview是怎么做的?

检测哪个选定项目(在 ListView 多列中)产生了 ContextMenu (Android)