Android控件之Autocompletion

  • Post author:
  • Post category:其他


Autocompletion是继承了TextView的一个控件。

AutoCompleteTextView是一个可以编辑的文本view,当用户键入时,会自动显示完成建议信息。
建议列表显示在下拉列表框中,可以选中某项代替编辑框里的内容。
响应的属性值:

completionHint: :设置下拉菜单中的提示标题

complerionThreshold:指定用户至少输入多少个字符才会显示提示,这里的话我们指定了2个

dropDownHorizontalOffset::指定下拉菜单与文本之间的水平间距,这里的话我们设置为10dp;

dropDownVerticalOffset::同上,不过这个是竖直方向的偏移

dropDownHeight/Width:分别是指定下拉菜单的高度与宽度

popupBackground:为下拉菜单提供一个背景

XML文件;
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="${relativePackage}.${activityClass}" >
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

    <AutoCompleteTextView   
        android:id="@+id/autoText"  
        android:layout_width="match_parent"  
        android:layout_height="wrap_content"  
        android:text=""  
        android:completionHint="请输入搜索内容"  
        android:completionThreshold="2"  
        android:layout_weight="7"  
        android:dropDownHorizontalOffset="10dp" 
        android:popupBackground="@android:color/holo_orange_light" 
        
    />  
</RelativeLayout>

相应的代码;

package com.example.autocompletion;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;

public class MainActivity extends Activity {

	String [] str={
		"11","113","1134","11234"	
	};
	private AutoCompleteTextView searchtext; 
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		
		searchtext=(AutoCompleteTextView)findViewById(R.id.autoText);
		ArrayAdapter<String> adapter =new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line, str);
		searchtext.setAdapter(adapter);;
	}
}
效果:



版权声明:本文为xiaoleiacm原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。