如何从listView获取组件?

时间:2011-01-14 18:02:34

标签: android listview spinner

昨天我发布了这个问题并得到了答案,并且能够做我想做的事。

multiple spinner but one in xml

但现在的问题是如何从listView的行中获取每个微调器并使用它做什么?

在我的代码中,我只将String作为listAdapter的名称注入?

 ListView listView = (ListView) viewTxting.findViewById(R.id.ListViewTreeView);

 for (int i = 0; i < names.size(); i++) {
     listAdapter.add(names.get(i));
 }
 listView.setAdapter(listAdapter);

提前感谢。

1 个答案:

答案 0 :(得分:1)

这取决于你想用它做什么。一个选项是覆盖适配器上的[getView] [1]。这使您可以在创建时访问每个视图。

请记住,ListView在向上和向下滚动时会重复使用视图对象,因此您无法为提供的视图对象假设任何默认状态。如果要为一半视图更改某些值,则需要确保将其设置为另一半的默认值。

listView.setAdapter(new ListAdapter(...) {  
   public View getView (int position, View convertView, ViewGroup parent) {
     View v = super.getView(position, convertView, parent);    
     // do stuff with v here.
   }

}

[1]:http://developer.android.com/reference/android/widget/Adapter.html#getView(int,android.view.View,android.view.ViewGroup)