.HashMap 不能转换为 android.database.Cursor
Posted
技术标签:
【中文标题】.HashMap 不能转换为 android.database.Cursor【英文标题】:.HashMap cannot be cast to android.database.Cursor 【发布时间】:2016-02-04 08:51:28 【问题描述】:lv.setOnItemClickListener(new AdapterView.OnItemClickListener()
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
Cursor cursor = (Cursor) parent.getItemAtPosition(position);
String item_sub = cursor.getString(cursor.getColumnIndex(DBController.prop_no1));
String prop = String.valueOf(item_sub);
String.valueOf(parent.getItemAtPosition(position));
Toast.makeText(Search_Equipments.this, prop, Toast.LENGTH_LONG).show();
);
有人知道这段代码有什么问题吗?
【问题讨论】:
这一行的目的是什么:String.valueOf(parent.getItemAtPosition(position)); 究竟是什么让您认为parent.getItemAtPosition(position)
是一个光标? (显然不是)
String.valueOf(parent.getItemAtPosition(position));就是得到那个位置的刺值
你能编辑我的代码吗?
【参考方案1】:
正如文档所述,getItemAtPosition 返回一个对象,检查您是否将此对象转换为正确的类型,因为您似乎没有。
公共对象 getItemAtPosition (int position)
在 API 级别 1 中添加 获取与列表中指定位置关联的数据。
参数
position 要获取哪些数据 退货 与列表中指定位置关联的数据
另一件事是你的行:
String.valueOf(parent.getItemAtPosition(position));
什么都不做。
【讨论】:
以上是关于.HashMap 不能转换为 android.database.Cursor的主要内容,如果未能解决你的问题,请参考以下文章