如何从android中的listView onItemClick获取项目?

时间:2015-09-30 13:54:39

标签: android android-listview onitemclicklistener

我正在开发应用,在该应用中,我创建了自定义列表视图。我正在从API调用填充listView。现在点击一个特定的列表项我想获得该索引上显示的数据。 我在下面的代码中应该改变什么

http://jenkins/job/MyProject/25/api/json

请帮忙。谢谢

5 个答案:

答案 0 :(得分:5)

这很简单。 parent.getItemAtPosition(position);

答案 1 :(得分:3)

parent.getAdapter().getItem(position)

此代码给出一个对象。您必须将其强制转换为对象类型。如果你使用toString()方法,它会给你指针地址(如果对象没有自定义的toString()方法。)所以你可以使用它;

CustomObject obj = (CustomObject)parent.getAdapter().getItem(position);

注意:CustomObject是您在列表类型中将listview作为适配器提供的。

答案 2 :(得分:1)

使用parent.getItemAtPosition(position);,它将返回一个Object(适配器中使用的模型)。

要从对象中获取某些字段,请不要调用Object.toString();,它将返回对象引用,而不是您要查找的值。请改用Object.yourField;

答案 3 :(得分:1)

这是我如何获得项目

iTextSharp.text.Document doc = new iTextSharp.text.Document();

//pdfpath is the full path of where you want the pdf to be created
//keep in mind to check for directory existence
PdfWriter.GetInstance(doc, new FileStream(pdfpath, FileMode.Create));
doc.Open();

//files is a list of your files as FileInfo
foreach (var file in files)
{
  try
  {
    Image docImage = Image.GetInstance(file.FullName);
    //scale the images to fit the document size
    docImage.ScaleToFit(doc.PageSize.Width, doc.PageSize.Height);
    docImage.Alignment = Image.ALIGN_CENTER; //align the pictures
    doc.Add(docImage);
  }
  catch (Exception ex)
  {
    //exception handle logic
  }
  finally
  {
     doc.close();
  }      
}

答案 4 :(得分:0)

使用位置textview参考来获取值

   TextView tv= (TextView) view.findViewById(R.id.tvPopUpItem);
        String str= tv.getText().toString();