Android 开发笔记___AutoComplateTextView__自动完成文本框

原理:EdtText结合监听器TextWatcher与下拉框spinner,一旦监控到EditText的文本发生变化,就自动弹出适配好的文字下拉内容。

  • 属性以及设置方法:
XML中的属性 代码中 说明
completionHint setcompletionHint 设置下拉列表底部的提示文字
completionThreshold setThreshol 设置至少输入多少个字符才会显示提示
dropDownHorizontalOffset setdropDownHorizontalOffset 设置下拉列表与文本框之间的水平偏移
dropDownVerticalOffset setdropDownVerticalOffset 设置下拉列表与文本框之间的垂直距离
dropDownHeight setdropDownHeight 设置下拉列表的高度
dropDownWeight setdropDownWeight 设置下拉来列表宽度
setAdapter 设置适配器

 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     android:layout_width="match_parent"
 3     android:layout_height="match_parent"
 4     android:orientation="vertical"
 5     android:padding="5dp" >
 6 
 7     <AutoCompleteTextView
 8         android:id="@+id/ac_text"
 9         style="@style/text_normal"
10         android:padding="10dp"
11         android:hint="请输入搜索关键词"
12         android:completionHint="相关词语"
13         android:completionThreshold="1"
14         android:dropDownHeight="wrap_content"
15         android:dropDownHorizontalOffset="0dp"
16         android:dropDownVerticalOffset="0dp"
17         android:dropDownWidth="match_parent"
18         android:textColor="#000000"
19         android:textSize="17sp" />
20 
21 </LinearLayout>
 1 package com.example.alimjan.hello_world;
 2 
 3 import android.content.Context;
 4 import android.content.Intent;
 5 import android.os.Bundle;
 6 import android.support.v7.app.AppCompatActivity;
 7 import android.widget.ArrayAdapter;
 8 import android.widget.AutoCompleteTextView;
 9 
10 /**
11  * Created by alimjan on 7/3/2017.
12  */
13 
14 public class class_3_4_4 extends AppCompatActivity {
15 
16     private AutoCompleteTextView ac_text;
17     private String[] hintArray = {"第一", "第一次", "第一次写代码", "第一次领工资", "第二", "第二个"};
18 
19     @Override
20     protected void onCreate(Bundle savedInstanceState) {
21         super.onCreate(savedInstanceState);
22         setContentView(R.layout.code_3_4_4);
23 
24         ac_text= (AutoCompleteTextView) findViewById(R.id.ac_text);
25         ArrayAdapter<String> adapter = new ArrayAdapter<String>(
26                 this, R.layout.item_dropdown, hintArray);
27         ac_text.setAdapter(adapter);
28     }
29 
30     public static void startHome(Context mContext) {
31         Intent intent = new Intent(mContext, class_3_4_4.class);
32         mContext.startActivity(intent);
33     }
34 
35 }

 

posted @ 2017-07-03 18:02  alm  阅读(366)  评论(0编辑  收藏  举报