Android中有一个自动提示补全输入的控件,AutoCompleteTextView。使用较为方便
效果图:(不区分大小写)
代码:
此处是使用了 string-array 作为数据源 (在string.xml文件中创建)
<string-array name="search">
<item>国通快递</item>
<item>汇通快递</item>
<item>申通</item>
<item>顺风</item>
<item>天天快递</item>
<item>圆通速递</item>
<item>韵达快运</item>
<item>中通速递</item>
<item>ems快递</item>
<item>ems快递A</item>
<item>ems快递B</item>
<item>ems快递C</item>
<item>ems快递D</item>
<item>ems快递E</item>
</string-array>
XML布局文件:
<AutoCompleteTextView
android:id="@+id/search_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:background="@null"
android:completionThreshold="3"
android:gravity="bottom"
android:hint="请输入快递名称"
android:textSize="25sp" />
android:completionThreshold="3" : 表示在输入3个字符后显示提示信息
Java代码:
// adapter
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_dropdown_item_1line, array );
// 设置内容
mAutoCompleteTextView.setAdapter(adapter);
【注】每次提示条数问题:
上图为在一个测试中写的,然后提示的是全部的信息,当时想只显示五条,但是没有找的对应的方法或者属性,今天在一个小工程里面使用的时候,只显示了五条。原因
如下图