1

我的活动中有一个 ListView。每行包含此模式中的三个 TextView: ( RowId ) ( Name ) ( Phone number )

当用户单击一行时,我需要获取行 ID。我做了很多事情并搜索了网络,但是我没有找到解决方案。我不知道如何从以下方法获取行 ID:

listView = (ListView) findViewById(R.id.listview);
listView.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
            Log.i(TAG, "item " + position + " clicked.");

        }
});

任何建议将不胜感激。

4

3 回答 3

9

你也可以使用v.findViewById(R.id.yourTextViewId)

于 2012-06-21T20:18:34.240 回答
0

v.getChildAt(0)如果您确定该ListView项目是由这三个直接形成的TextView,您也可以使用

于 2012-06-21T20:12:54.583 回答
0

获取行元素

使用v.findViewById(<id of row element>)

您可以使用 get 获取列表中的对象数据............

<your_adapter>.getItem(position);

或者

parent.getItemAtPosition (position);

两者都将返回 Object....

于 2012-06-21T20:08:38.913 回答