Android中可下拉选择的AutoCompleteTextView的使用
来源:互联网 发布:网络维护维修预算 编辑:程序博客网 时间:2024/05/21 17:25
编写不易,如有转载,请声明出处: 梦回河口:http://blog.csdn.net/zxc514257857/article/details/70187121
简介
可下拉选择的TextView有两种类型,一种是只能输入一个关键字的搜索,使用的控件名字叫AutoCompleteTextView;另一种是可以输入多个关键字的搜素,使用的控件名字叫MultiAutoCompleteTextView。
下面就将这两个控件演练一下,Demo里面还使用了安卓5.0新特性中的FloatingActionButton控件
Demo展示图片
实现代码如下
//布局代码//(layout)activity_main<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.test.autocompletetextview.MainActivity"> <AutoCompleteTextView android:id="@+id/search" android:completionThreshold="1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="请输入搜索关键字!" android:singleLine="true" android:ems="10"/><!-- completionThreshold属性意思是 控件从第几个开始匹配 --><!-- ems属性意思是 控件最多可以输入几个字符 --><!-- singleLine属性意思是 控件最多只能显示一行 --> <android.support.design.widget.FloatingActionButton android:id="@+id/fab" app:fabSize="normal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:layout_marginRight="30dp" android:layout_marginBottom="50dp" android:onClick="fab"/><!-- fabSize属性意思是 控件大小有normal和mini选项 --></RelativeLayout>
注:FloatingActionButton使用时,需要在app—>build.gradle的dependencies节点下面添加compile ‘com.android.support:design:22.2.0’
//布局代码//(layout)activity_second<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.test.autocompletetextview.MainActivity"> <MultiAutoCompleteTextView android:id="@+id/receiver" android:completionThreshold="1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="请输入收件人" android:singleLine="true" android:ems="10"/><!-- completionThreshold属性意思是 控件从第几个开始匹配 --><!-- ems属性意思是 控件最多可以输入几个字符 --><!-- singleLine属性意思是 控件最多只能显示一行 --></RelativeLayout>-------------------------------------------------------------------//activity代码//(activity)MainActivityimport android.content.Intent;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ArrayAdapter;import android.widget.AutoCompleteTextView;public class MainActivity extends AppCompatActivity { private AutoCompleteTextView mSearch; private String[] mRes; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initData(); } private void initView(){ mSearch = (AutoCompleteTextView) findViewById(R.id.search); //搜索关键字后匹配的文字信息,应该是从服务器获取的数据,存到本地之后再进行显示 mRes = new String[]{"android开发", "androidStudio" ,"android" ,"java" ,"javaEE" ,"javaScript"}; } private void initData(){ //构建适配器的几个参数:上下文对象, 显示的布局 ,显示的内容 ArrayAdapter<String> adapter = new ArrayAdapter<>(this , android.R.layout.simple_list_item_1 , mRes); //设置适配器 mSearch.setAdapter(adapter); } public void fab(View view){ Intent intent = new Intent(MainActivity.this , SecondActivity.class); startActivity(intent); }}-------------------------------------------------------------------//(activity)SecondActivityimport android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.widget.ArrayAdapter;import android.widget.MultiAutoCompleteTextView;public class SecondActivity extends AppCompatActivity { private MultiAutoCompleteTextView mReceiver; private String[] mRes; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); initView(); initData(); } private void initView(){ mReceiver = (MultiAutoCompleteTextView) findViewById(R.id.receiver); //搜索关键字后匹配出来的文字信息 应该是从服务器获取的数据,存到本地之后再进行显示 mRes = new String[]{"android开发", "androidStudio" ,"android" ,"java" ,"javaEE" ,"javaScript"}; } private void initData(){ //构建适配器的几个参数:上下文对象, 显示的布局 ,显示的内容 ArrayAdapter<String> adapter = new ArrayAdapter<>(this , android.R.layout.simple_list_item_1 , mRes); //设置适配器 mReceiver.setAdapter(adapter); //为MultiAutoCompleteTextView设置分隔符 mReceiver.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); }}
Demo下载请移步:http://download.csdn.net/detail/zxc514257857/9815292
———-因本人才疏学浅,如博客或Demo中有错误的地方请大家随意指出,与大家一起讨论,共同进步,谢谢!———-
0 0
- Android中可下拉选择的AutoCompleteTextView的使用
- Android中AutoCompleteTextView的使用
- Android AutoCompleteTextView的使用
- Android AutoCompleteTextView 的使用
- android 中 <AutoCompleteTextView>标签的使用
- Android中AutoCompleteTextView控件的使用
- Android中AutoCompleteTextView的使用方法
- Android中AutoCompleteTextView的用法
- Android中AutoCompleteTextView的…
- Android中的AutoCompleteTextView的使用
- android AutoCompleteTextView控件的使用
- Android AutoCompleteTextView的简单使用
- Android AutoCompleteTextView 的使用_1_2
- Android中AutoCompleteTextView,Spinner和ListView的使用
- 可编辑的下拉选择框
- 实现一个可下拉选择的TabLayout
- 关于AutoCompleteTextView的下拉列表
- Android中Spinner的使用及其详细总结(可实现下拉列表)
- 《岛上书店》读后感
- css中浮动需要注意的东西
- jquery在当前点击事件函数中删除当前元素
- ubuntu 16.04 搭建LAMP开发环境
- HTTP状态码
- Android中可下拉选择的AutoCompleteTextView的使用
- VSCode装上vetur插件可以支持emmnet
- JAVA静态代码块、非静态代码块、构造函数的执行顺序
- java字节文件输入流读文件
- 欢迎使用CSDN-markdown编辑器
- C#里partial关键字的作用(转摘)
- 跳转等待页面
- 第一弹:微信小程序开发思考总结—“文章阅读器和电影信息”项目实践---序言、准备工作、项目构架
- 素数快速求法 -- 筛法求素数