在android中,当我按了listview中的一个子项时,利用ContextMenu弹出菜单,那怎么获取这个子项的数据呢?
这个listview的adapter中每一个子项都有map存储着键值对,那如何根据点击不同的子项获取到这些键值对呢?我想调用其中的一些数据,急求TTAdapterView...
这个listview的adapter中每一个子项都有map存储着键值对,那如何根据点击不同的子项获取到这些键值对呢?我想调用其中的一些数据,急求 T T
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
int position = info.position;
我用这样拿到了对应的子项id,然后如何取得其中的数据呢? 展开
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
int position = info.position;
我用这样拿到了对应的子项id,然后如何取得其中的数据呢? 展开
展开全部
不要这样拿 我一般这么拿
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就是你点击的那项的数据
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了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询