0

我现在正在使用一项 Web 服务。如果我提供正确的输入值,此 Web 服务将返回一些字符串值。我的要求是,我需要在 android 的 AutoCompleteTextView 中显示这些输入值。

例如:

假设我的 Web 服务有输入值,例如“AX”、“AB”、“B”、“CC”、“CX”、“D”等等。这里我需要在 AutocompleteTextView 中显示这些输入值安卓。

注意:我不想在 AutoCompleteTextView 中以字符串格式对这些输入值进行硬编码,因为这些输入值将每天更新。这样就没有硬编码的意义了,不是吗?

请提出建议!

感谢您宝贵的时间!..

4

3 回答 3

2

这是您可以从服务中以字符串数据的形式获取数据的方式。

public String getDataFromService()
{
    try {
        HttpClient httpClient=new DefaultHttpClient();
        HttpGet httpGet=new HttpGet(yourserviceURLgoeshere);
        HttpResponse httpResponse=httpClient.execute(httpGet);
        HttpEntity entity = httpResponse.getEntity();
        is=entity.getContent();
    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return parseExecutedRequest();
}

private String parseExecutedRequest()
{
    try {
        BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
        StringBuilder stringBuilder=new StringBuilder();
        String line=null;

        while((line=bufferedReader.readLine())!=null)
        {
            stringBuilder.append(line+ "\n");
        }

        is.close();
        result=stringBuilder.toString();
    } catch (UnsupportedEncodingException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return result;
}
于 2013-04-03T12:20:42.630 回答
0

您必须创建一个 ArrayList 并填充您从 Web 服务获得的数据,并使用您创建的 ArrayList 将适配器 设置AutoCompleteTextView

于 2012-10-29T05:52:35.137 回答
0

如果输入值,则在此创建数组并将其绑定到 AutoCompleteTextView。这是示例单击此

于 2012-10-29T05:53:07.837 回答