在listview项目上获取对象属性

时间:2014-07-14 10:11:50

标签: android listview

我是android新手,我的方案如下: 我有一个列表视图绑定到类型为Department的数组列表(一个具有id和name属性的简单对象)。我的目标是让列表视图显示部门名称(通过覆盖Department类的toString()方法完成),当我单击列表视图项时,我想将所选项的ID属性传递给另一个活动。那么,如何在项目选择中获取ID属性?

3 个答案:

答案 0 :(得分:1)

您可以在android中使用Get Tag / Set Tag来实现此目的。

以下示例将有所帮助:

答案 1 :(得分:1)

你应该用这个:

yourListView.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1,
                int position, long arg3) {

        }
    });

在onItemClick中,您将获得所选项目的位置,您可以获得这样的ID:

yourArrayList.get(position).getDepartmentId();

答案 2 :(得分:0)

您可以覆盖onItemClick方法并获取视图的位置

public abstract void onItemClick (AdapterView<?> parent, View view, int position, long id)

单击此AdapterView中的项目时要调用的回调方法。

如果需要访问与所选项目相关联的数据,实施者可以调用getItemAtPosition(position)。

参数

  • parent发生点击的AdapterView。
  • view在单击的AdapterView中的视图(这将是一个 适配器提供的视图)
  • position视图在适配器中的位置。
  • id已点击的项目的行ID。