AutocompleteTextView填充了Google搜索结果

时间:2014-01-23 15:08:15

标签: android search autocomplete textview

我需要一个TextView,当用户输入一个单词时,下拉列表框会显示与谷歌搜索建议的相同短语,如果这些单词是在google.com的搜索文本框中输入的话站点。

是否可以提供此服务。怎么样? 我在网上搜索没有运气。

谢谢大家。

2 个答案:

答案 0 :(得分:0)

对于下拉列表,您可以使用:

Autocomplete Android

对于显示结果,您必须调用自己的Web服务或缓存数据。如果您需要谷歌搜索结果,我不知道谷歌是否公开了一个公共API来获取它......

答案 1 :(得分:0)

您好Geltrude在这里我为您添加了示例源代码。请尝试让我知道。希望它对你有所帮助。感谢。

首先创建 autocomplete_textview.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <AutoCompleteTextView
    android:id="@+id/autoCompleteText"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginTop="133dp"
    android:ems="10"
    android:hint="Search Name"
    android:paddingLeft="10dp"
    android:paddingTop="7dp"
    android:singleLine="true" />

</RelativeLayout>

<强> list_item.xml:

<?xml version="1.0" encoding="utf-8"?>
<!--  Single List Item Design -->
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/label"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="10dip"
    android:textSize="16sp"
    android:textStyle="bold" >
</TextView>

<强> AutocompleteSample.java

import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;

public class AutocompleteSample extends Activity {
    private static AutoCompleteTextView autoCompleteText;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.autocomplete_textview);        
    autoCompleteText = (AutoCompleteTextView)findViewById(R.id.autoCompleteText);
    List<String> nameList = new ArrayList<String>();
    nameList.add("Steve");
        nameList.add("Bill");
        nameList.add("Tom");
        nameList.add("Arnold");
        nameList.add("Vishva");
        nameList.add("Durai");
        nameList.add("John");
        nameList.add("Sam");
        nameList.add("Johnson");
        nameList.add("Hentry");
        nameList.add("Thamos");
        ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
                R.layout.list_item, nameList);
        autoCompleteText.setAdapter(dataAdapter);
    }   
}