如何在listview中获取所选项目的索引和文本视图? | 您所在的位置:网站首页 › bb平台怎么注册 › 如何在listview中获取所选项目的索引和文本视图? |
我在Custom ListView上尝试过这样的东西 ![]() 我的场景是: 要使用名为的JSONArrayRequest从服务器获取三个对象,请执行以下操作: ID (tvLvDocID) Title (tvLvDocTitle) Sub Title (tvLvDocSub Title)ID实际上是MySQL数据库中item列的ID。 我所做的是: listViewDoc.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { int myPosition = position; String id_doc_from_lv = listViewDoc.getItemAtPosition(myPosition).toString(); Toast.makeText(getApplicationContext(), "ID is : " + id_doc_from_lv, Toast.LENGTH_LONG).show(); } }); } catch (Exception e) { e.printStackTrace(); }但我的问题是它返回的是Custom ListView的Title。我只想要ID,我也在上面的标题的ListView中展示了它。(这是另一个故事,我稍后将对该ID__应用INVISIBLE属性)。 因为我只想要ID。所以我向this answer寻求帮助 当我在代码中添加以下代码行时: String tv_ID_Str= ((TextView)view.findViewById(R.id.tvLvDocID)).getText().toString();并将此tv_ID_Str称为: Toast.makeText(getApplicationContext(), "ID is : " + tv_ID_Str, Toast.LENGTH_LONG).show();啊哈!现在,我可以成功地显示tvLvDocID,并且可以从这个ID上的数据库中检索所有信息。 最终代码如下所示: listViewDoc.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { int myPosition = position; String id_doc_from_lv = listViewDoc.getItemAtPosition(myPosition).toString(); // selected item String tv_ID_Str = ((TextView)view.findViewById(R.id.tvLvDocID)).getText().toString(); Toast.makeText(getApplicationContext(), "ID is : " + tv_ID_Str, Toast.LENGTH_LONG).show(); } }); } catch (Exception e) { e.printStackTrace(); }我的回答的目的是像我这样的人,他们花了很多时间来做这件事。我希望这能对某些人有所帮助。 |
CopyRight 2018-2019 实验室设备网 版权所有 |