2012-07-19 32 views
-1

我有一个包含两个文本视图的CustomAdapter。我需要获取每个的值/字符串。在自定义ArrayAdapter中获取两个TextView的值

能抢我做这第一个:

List<String> dataList; 
List<String> catList; 
public void onItemClick(AdapterView<?> arg0, View arg1, 
        int arg2, long id) { 

firstTextView = dataList.get(arg2); // This grabs TextView #1 
secondTextView = catList. ??? 

// later on 


adapter = new SearchAdapter(SearchableActivity.this, dataList, catList); 
setListAdapter(adapter); 

我如何获得第二个值?我无法明确创建arg3

任何想法?

编辑:或者这对ArrayAdapter不可行,我需要使用BaseAdapter创建更多的自定义内容?

+0

这里的数组是什么意思。 – 2012-07-19 04:23:32

+0

我有一个列表“数组”。那是一个不好的选择。实际名称是dataList。我将编辑文本不要混淆。 – KickingLettuce 2012-07-19 04:24:37

+1

在列表视图中为两个文本视图维护单独的数组,并通过列表获取这些值 – 2012-07-19 04:25:42

回答

1

使用onItemClick方法的第二个参数:

TextView first = (TextView) arg1.findViewById(R.id.first_textview); 
String s1 = first.getText().toString(); 
TextView second = (TextView) arg1.findViewById(R.id.second_textview); 
String s2 = second.getText().toString(); 

也许会更好,只是返回从适配器一个特殊的对象,它包含了两个字符串,如:

class DataStructure { 
    String s1, s2 
} 

和回报这从这个适配器。

+0

这是它的感谢! – KickingLettuce 2012-07-19 04:34:23

相关问题