2012-02-23 60 views
0

我有custom_row一个ListView,每一行都有一个textView1和textView2,列表现在已经2条记录,我有一个按钮,是不是就行了。 当我点击按钮,我想从2记录的textView2中获取文本。 这可能吗?得到具体位置文本列表视图的Android

回答

1

我会采取一个快捷方式,您ListView正在填充使用数据集的Adapter。这个数据集几乎可以是任何数据结构,如Array,ArrayList等。

您定义的布局,例如custom_row在您的案例中只定义了您的视图的结构,即“where”项目将显示在列表上的项目中。

另一方面,仍然有责任告诉ListView“什么”在textView1textView2内显示。您可以使用将ListView连接到数据集的Adapter执行此操作。通常情况下,ListView是数据集的一对一映射,即列表中的第一项是您数据集中的第一项(我不知道您仅用于两项的内容,可能是数组)。

ListViewAdapter上调用getCount()来找出总共有多少个视图。然后调用getView()为每个视图显示在屏幕上。在这种方法中,您可以定义在列表中的单个视图中显示的内容(您的custom_row)。

现在,你会知道哪些数据集的条目应该填充它查看在ListView所以你可以阅读它关闭在那里。例如,如果您getView()作用:

textView2.setText(getItem(position).getSomeTextField()); 

与原始数据集被命名为一个ArrayList listDataSet

你可以只是做listDataSet.get(2).getSomeTextField()

注:您将有管理的范围数据集,以便从您呼叫的任何地方可见。

+0

我不明白,对不起,如果我是愚蠢的 – Razvan 2012-02-23 16:24:35

+0

我添加了一些更多的细节。希望这个清楚。要理解的重要一点是'ListView'只是一个视图。它显示你告诉它显示的内容。只要找出你在告诉它... – 2012-02-23 16:51:45

1

找回你的ListView(也许已经存储的对象感谢中findViewById,或在您的ListActivity调用getListView())。

然后调用getItemAtPosition()你的列表视图中,你想要的位置。