在android列表中获取单击的项目

在android列表中获取单击的项目,android,json,android-listview,Android,Json,Android Listview,我的android列表活动中有一个列表视图,它通过json文件获取数据。在列表视图中,我必须显示项目的基本详细信息。当我们点击一个项目时,我需要显示更多关于点击项目的信息。那么,如何识别用户单击了哪个项目 在侦听器实现中,您引用了单击的视图,如果是项单击(或可展开列表:组单击/子单击),您还可以在列表中找到基础数据的位置 因此,只需使用位置从用于填充列表(适配器)的数据结构中检索单击的数据 更新 如果您有一个ListActivity,其中dataList成员保存您在列表中显示的值,您只需覆盖它的

我的android列表活动中有一个列表视图,它通过json文件获取数据。在列表视图中,我必须显示项目的基本详细信息。当我们点击一个项目时,我需要显示更多关于点击项目的信息。那么,如何识别用户单击了哪个项目

在侦听器实现中,您引用了单击的
视图
,如果是
项单击
(或可展开列表:
组单击
/
子单击
),您还可以在列表中找到基础数据的位置

因此,只需使用位置从用于填充列表(适配器)的数据结构中检索单击的数据

更新

如果您有一个
ListActivity
,其中
dataList
成员保存您在列表中显示的值,您只需覆盖它的
onListItemClick
方法:

/**
 * The list of custom data you display in this activity
 */
private ArrayList<MyData> dataList;

@Override
protected void onListItemClick(ListView l, View v, int position, long id)
{
    super.onListItemClick(l, v, position, id);
    final MyData selectedValue = dataList.get(position);
    //TODO: deal with this selectedValue
}
/**
*在此活动中显示的自定义数据列表
*/
私有ArrayList数据列表;
@凌驾
受保护的void onListItemClick(列表视图l、视图v、整数位置、长id)
{
super.onListItemClick(左、右、位置、id);
最终MyData selectedValue=dataList.get(位置);
//TODO:处理此selectedValue
}
API文档对于
onListItem单击

当 列表中的项目已选中。 子类应该重写。
子类可以调用 getListView().getItemAtPosition(位置) 如果他们需要访问数据 与所选项目关联

参数

  • l
    单击 发生
  • v
    在中单击的视图 列表视图
  • 位置
    视图的位置 在名单上
  • id
    点击

您可以在和上找到一个完整的示例。

在侦听器实现中,您引用了已单击的
视图
,如果是
项单击
(或可展开列表:
组单击
/
子单击
),您还可以在列表中找到基础数据的位置

因此,只需使用位置从用于填充列表(适配器)的数据结构中检索单击的数据

更新

如果您有一个
ListActivity
,其中
dataList
成员保存您在列表中显示的值,您只需覆盖它的
onListItemClick
方法:

/**
 * The list of custom data you display in this activity
 */
private ArrayList<MyData> dataList;

@Override
protected void onListItemClick(ListView l, View v, int position, long id)
{
    super.onListItemClick(l, v, position, id);
    final MyData selectedValue = dataList.get(position);
    //TODO: deal with this selectedValue
}
/**
*在此活动中显示的自定义数据列表
*/
私有ArrayList数据列表;
@凌驾
受保护的void onListItemClick(列表视图l、视图v、整数位置、长id)
{
super.onListItemClick(左、右、位置、id);
最终MyData selectedValue=dataList.get(位置);
//TODO:处理此selectedValue
}
API文档对于
onListItem单击

当 列表中的项目已选中。 子类应该重写。
子类可以调用 getListView().getItemAtPosition(位置) 如果他们需要访问数据 与所选项目关联

参数

  • l
    单击 发生
  • v
    在中单击的视图 列表视图
  • 位置
    视图的位置 在名单上
  • id
    点击
您可以在和上找到完整的示例。

公共类MainActivity扩展了AppCompatActivity{
私有列表视图列表视图;
私有ArrayList ArrayList;
私有数据模型;
私人AdapterForList AdapterForList;
公共ArrayList getArrayList(){
arrayList=新的arrayList();
datamodel=新的datamodel();
对于(int i=0;i
public类main活动扩展了appcompative活动{
私有列表视图列表视图;
私有ArrayList ArrayList;
私有数据模型;
私人AdapterForList AdapterForList;
公共ArrayList getArrayList(){
arrayList=新的arrayList();
datamodel=新的datamodel();

对于(int i=0;i你需要在哪里显示更多信息?你需要在哪里显示更多信息?你能再描述一下吗?如果你能给我一个例子的链接,那就太好了。我已经更新了我的答案,包含了一个例子和一些链接,请看一下。你能再描述一下吗?如果你能给我一个例子的链接,那就太好了。我已经更新了我的答案包含一个例子,和一些链接,请大家看一下。