2013-11-25 31 views
0

我从我的服务器获取搜索结果,并在列表视图中显示它们。首先,我需要将其更改为可滚动下拉菜单。下拉列表中的值格式为: SchoolA;俄罗斯 我需要在点击时捕获此文本并将其分为SchoolA和俄罗斯。 代码是在活动页面如下:编写方法来处理点击在列表视图android

private void populateResults(String response) { 

List<String> resultsFromServer = parseResponse(response); 

ListView resultsList = (ListView) findViewById(R.id.schoolssListView); 
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_list_item_1, resultsFromServer); 
resultsList.setAdapter(arrayAdapter); 

addListenerOnClick(); // this is the method in which i need the above mentioned operations} 

现在,在列表视图的XML页面代码如下:

<ListView 
    android:id="@+id/schoolssListView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 
</ListView> 

回答

2

试试这个

listView.setOnItemClickListener(new OnItemClickListener() { 

@Override 
public void onItemClick(AdapterView<?> parent, View view, 
     int position, long id) { 

    // Your code here , position points to your requirement index 

} 

}); 

的onclick就可以得到该项目的位置,从该位置的ArrayList中获取字符串所以你会得到如:StringA;Russia然后用分隔符;拆分它,使用它

UPDATE

String currentString = "StringA;Russia"; 

String[] separated = CurrentString.split(";"); 
separated[0]; // it will contain StringA 
separated[1]; // it will contain russia 

备用

StringTokenizer tokens = new StringTokenizer(CurrentString, ":"); 

String first = tokens.nextToken();// this will contain "StringA" 
String second = tokens.nextToken(); 
+0

这不就是一个列表吗?它不会成为搜索框的下拉菜单。 – user2791805

+0

对于下拉菜单,您应该保留一个按钮和一个listView –

+0

也可以请告诉如何在该位置的文本上使用stringsplit方法? – user2791805

0

here是实现自定义列表视图和压倒一切的一个例子onItemclick在Android的列表视图

希望这会有所帮助。您可以询问是否有任何进一步的疑问。