您的位置:首页 > 移动开发 > Android开发

Android基础组件(一)自动完成控件AutoCompleteTextView

2015-06-25 22:15 656 查看
控件AutoCompleteTextView能帮助用户自动输入数据,就像百度中输入关键字后,会在下拉列表中自动显示出相关的关键词,现在就用控件AutoCompleteTextView来实现这个功能吧

首先在布局文件main.xml中添加3个控件,分别是TextView,AutoCompleteTextView,Button

[code]<TextView
        android:id="@+id/TextView_InputShow"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="请输入:" 
        />

     <AutoCompleteTextView
        android:id="@+id/AutoCompleteTextView_Input"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        />

     <Button
        android:id="@+id/Button_Clean"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="清空"
        />


然后在MainActivity.java中添加自动完成功能处理事件

[code]public class MainActivity extends Activity {
    private String[] normalString = new String[]{
            "Android","Android Blog","Android Market",
            "Android SDK","Android ***D","BlackBerry",
            "BlackBerry JDE","Symbian","Symbian Carbide",
            "Java 2ME","Java Fx","Java 2EE","Mobile",
            "Motorola","Nokie","Sun","Noike Symbian",
            "Nokie forum","WindowsMobile","Broncho",
            "Window XP","Google","Google Android",
            "Google浏览器","IBM","MicroSoft","J***A",
            "C","C++","C#","J#","VB"
    };
    private TextView tv;
    private AutoCompleteTextView autotv;
    private Button btn;
    private ArrayAdapter<String> arrayAdapter;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        tv=(TextView) findViewById(R.id.TextView_InputShow);
        autotv=(AutoCompleteTextView) findViewById(R.id.AutoCompleteTextView_Input);
        btn=(Button)findViewById(R.id.Button_Clean);
        //实现一个适配器对象,用来给自动完成输入框添加自动装入的内容
        arrayAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,normalString);
        autotv.setAdapter(arrayAdapter);//给自动完成输入框添加内容适配器
        //给清空按钮添加点击事件
        btn.setOnClickListener(new Button.OnClickListener(){
        public void onClick(View v){
            autotv.setText("");
        }   
       });

    }
}


这样就完成啦,运行一下



第一次写学习笔记,希望大牛可以指正一下O(∩_∩)O
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: