Android用户输入自动提示控件AutoCompleteTextView使用方法

时间:2022-07-28
本文章向大家介绍Android用户输入自动提示控件AutoCompleteTextView使用方法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

一、简介

1、AutoCompleteTextView的作用

2、AutoCompleteTextView的类结构图

也就是拥有EditText的各种功能

3、AutoCompleteTextView工作原理

AutoCompleteTextView的自动提示功能肯定需要适配器提供数据

4、Android里的适配器

5、适合AutoCompleteTextView的适配器

ArrayAdapter

二、AutoCompleteTextView实现自动提示的方法

1)AutoCompleteTextView实现自动提示的方法

第一步、创建适配器

String[] arr={“凯撒”,”凯撒广场”,”凯撒大帝”}; ArrayAdapter<String adapter= new ArrayAdapter<String (this, R.layout.textview, arr);

第二步、AutoCompleteTextView对象应用适配器

autoCompleteTextView1.setAdapter(adapter);

说明:

提示文本是用textview实现的,提示文本里面的提示数据就是String[] arr。

三、代码实例

代码:

fry.Activity01

package fry;

import com.example.AutoCompleteTextViewDemo1.R;

import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;

public class Activity01 extends Activity{
 private AutoCompleteTextView autoCompleteTextView1;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity01);
  autoCompleteTextView1=(AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
  /*
   * AutoCompleteTextView实现自动提示的方法
   * 第一步、创建适配器
   * 第二步、AutoCompleteTextView对象应用适配器
   * 
   */
  
  String[] arr={"凯撒","凯撒广场","凯撒大帝"};
  ArrayAdapter<String  adapter= new ArrayAdapter<String (this, R.layout.textview, arr);
  autoCompleteTextView1.setAdapter(adapter);
 }
}

fry.Activity01

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

 <AutoCompleteTextView 
  android:id="@+id/autoCompleteTextView1"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  / 

</LinearLayout 

/AutoCompleteTextViewDemo1/res/layout/textview.xml

<?xml version="1.0" encoding="utf-8"? 
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"  
 <!-- 这里是直接TextView,而不是layout下的TextView -- 
</TextView   

四、易错点

1、这里是直接TextView,而不是layout下的TextView

/AutoCompleteTextViewDemo1/res/layout/textview.xml

<?xml version="1.0" encoding="utf-8"? 
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"  
 <!-- 这里是直接TextView,而不是layout下的TextView -- 
</TextView  

以上就是本文的全部内容,希望对大家的学习有所帮助。