列表视图与关键字段

时间:2010-08-16 20:46:14

标签: android

我想在点击时显示列表视图,以获取项目键值。我该怎么做呢。

感谢, 迪安

2 个答案:

答案 0 :(得分:5)

你要做的事情的方式是使用ArrayAdapter和一个简单的类来创建你想要使用的对象。

例如,如果您想制作人员的列表视图,包括他们的姓名和年龄,并且想要在列表视图中显示他们的名字,您首先要创建一个Person类,如下所示:

public class Person {
  int age;
  String name;

  public Person(int age, String name) {
    this.age = age;
    this.name = name;
  }

  @Override
  public String toString() {
    return this.name; //what you want displayed for each row in the listview
  }

}

然后,在你使用listview的java文件中(比如说它叫做PersonTracker.java),你可以调用:

setListAdapter(new ArrayAdapter<Person>(PersonTracker.this, R.layout.list_people, people);
lv = getListView();
lv.setTextFilterEnabled(true);

lv.setOnItemClickListener(new OnItemClickListener() {
  public void onItemClick(AdapterView<?> parent, View currView, int position, long id) {
    Person selected = (Person)lv.getItemAtPosition(position);
    String selectedName = selected.name;  //ideally this would probably be done with accessors
    int selectedHeight = selected.height;

    //Do whatever you need to with the name and height here
    //such as passing via intents to the next activity...

  }
});

其中list_people只是一个通用的xml布局,只有一个textview控制每行的外观,而people是包含listview的xml布局。

如上所示,在onItemClick函数中,您可以从与单击的列表项关联的Person中获得您想要的任何内容。

无论如何,希望能帮助别人,并节省我花时间计算出来的时间......我需要一些睡眠......

答案 1 :(得分:0)

列表视图的项目键值?您在寻找onListItemClick from ListActivity吗?