自动补全提示最主要的是使用AutoCompleteTextView控件,继而从与控件关联的ArrayAdapter提供的字符串集合得到提示。
成都创新互联是专业的晋中网站建设公司,晋中接单;提供网站建设、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行晋中网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
先上图
AutoCompleteTextViewActivity.java代码如下:
public class AutoCompleteTextViewActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.autocomplete); setTitle("AutoCompleteTextView_Activity"); ArrayAdapteradapter = new ArrayAdapter ( this, android.R.layout.simple_dropdown_item_1line, COUNTRIES);//第2个参数是每个item的显示样式,第3个参数为提供数据的数组名 AutoCompleteTextView autotextView = (AutoCompleteTextView) findViewById(R.id.auto_complete); autotextView.setAdapter(adapter);//将adapter适配器添加到auto..对象中 autotextView.setThreshold(1);//设置输入几个字母开始关联,默认是2(threshole:入口,门槛,临界值) } static final String[] COUNTRIES = new String[] { //设置数据源 "China" ,"Russia", "Germany","Ukraine", "Belarus", "USA" ,"China1" ,"China12", "Germany1", "Russia2", "Belarus1", "USA1" }; }
layout中XML文件如下:
当然,为了以后修改数据源及代码的方便,建议将数据添加到在layout下的strings.xml文件中去
- China
- China1
- China12
再将原先的数据源修改为如下即可
String[] COUNTRIES = getResources().getStringArray(R.array.countries_array);
注意:这条语句应写在new ArrayAdapter语句之前