您好!欢迎来到源码码网

Android自动完成文本框控件AutoCompleteTextView使用

  • 源码教程
  • 来源:源码码网
  • 编辑:admin
  • 时间:2021-01-10 16:10
  • 阅读:338

在使用百度或者 Google 搜索信息时,只需要在搜索框中输入几个关键字,就会有很多相关的信息以列表形式被列举出来供用户选择,这种效果在 Android SDK 中可以通过 AutoCompleteTextView 来实现。

下面用一个简单的实例讲解 AutoCompleteTextView 的使用方法。在工程 WidgetDemo 的布局文件 main.xml 中添加一个 Button,用以启动 AutoCompleteTextViewActivity。

在 main.xml 中添加代码如下:

  1. <Button

  2.     android:id="@+id/button5"

  3.     android:layout_width="wrap_content"

  4.     android:layout_height="wrap_content"

  5.     android:text="AutoCompleteTextViewDemo"/>

单击 Button 并启动 AutoCompleteTextViewActivity 的代码如下:


  1. Button autobtn = (Button)this.findViewById(R.id.button5);

  2. autobtn.setOnClickListener(new OnClickListener(){

  3. @Override

  4.   public void onClick(View v){

  5.        Intent intent = new Intent(WidgetDemoActivity.this, AutoCompleteTextViewActivity.class);

  6.        startActivity(intent);

  7.      }

  8. });


同时在 AndroidManifest.xml 文件中声明该 Activity:

<activity android:name=".AutoCompleteTextViewActivity"></activity>

AutoCompleteTextViewActivity 的运行效果如图 1 所示。

AutoCompleteTextViewActivity的运行效果

图 1  AutoCompleteTextViewActivity 的运行效果

AutoCompleteTextViewActivity 使用的布局文件为 autocompletetextview.xml,其具体内容如下:


  1. <?xml version="1.0" encoding="utf-8"?>

  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

  3. android:layout_width="match_parent"

  4. android:layout_height="match_parent"

  5. android:orientation="vertical">


  6. <TextView

  7. android:layout_width="fill_parent"

  8. android:layout_height="wrap_content"

  9. android:text="AutoCompleteTextView演示:" />


  10. <AutoCompleteTextView

  11. android:id="@+id/autoCompleteTextView1"

  12. android:layout_width="match_parent"

  13. android:layout_height="wrap_content"

  14. android:text="" />


  15. <requestFocus />

  16. </LinearLayout>

AutoCompleteTextViewActivity.java 的代码如下:


package introduction.android.widgetdemo;

import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;

public class MainActivity extends Activity {
    private AutoCompleteTextView textView;
    private static final String[] autotext = new String[]{"张三","张无忌","张三丰"};
   
    @Override
    public void onCreat(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.autocompletetextview);
        textView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
        /*new ArrayAdapterd 对象将 autotext字符串数组传入*/
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(
        this,android.R.layout.simple_dropdown_item_1line,autotext);
        /*将ArrayAdapter添加到AutoCompleteTextView中*/
        textView.setAdapter(adapter);
    }
}

AutoCompleteTextViewActivity 中为可自动补全的内容建立对应字符串数组 autotext,将该数组关联到 ArrayAdapter 中,然后将 ArrayAdapter 与 AutoCompleteTextView 相关联,进而实现自动完成文本功能。

AutoCompleteTextView 提供一系列属性对显示效果进行设置,分别说明如下。

  • completionThreshold:它的值决定了你在 AutoCompleteTextView 中至少输入几个字符,才会具有自动提示的功能。另外,默认最多提示 20 条。

  • dropDownAnchor:它的值是一个 View 的 ID,指定后,AutoCompleteTextView 会在这个 View 下弹出自动提示。

  • dropDownSelector:应该是设置自动提示的背景色之类的,没有尝试过,有待进一步考证。

  • dropDownWidth:设置自动提示列表的宽度。


特别声明:
1、如无特殊说明,内容均为本站原创发布,转载请注明出处;
2、部分转载文章已注明出处,转载目的为学习和交流,如有侵犯,请联系客服删除;
3、编辑非《源码码网》的文章均由用户编辑发布,不代表本站立场,如涉及侵犯,请联系删除;
全部评论(0)
推荐阅读
  • bootstrap ui框架能用在uniapp中吗?
  • bootstrap ui框架能用在uniapp中吗?
  • BootstrapUI框架通常是前端开发中的一种工具,它提供了一套预定义的CSS样式和组件,用于快速构建响应式布局的网页。然而,UniApp是一个使用Vue.js开发跨平台应用的框架,它可以用来开发iOS、Android、以及各种小程序和H5应用。
  • 互动社区
  • 来源:源码码网
  • 编辑:热度建站
  • 时间:2024-04-12 00:04
  • 阅读:138
  • css实现banner图由中心点动态放大效果
  • css实现banner图由中心点动态放大效果
  • 在日常的网页设计中,为了让网页增加一定的特效以达到交互的目的,我们尝尝会在网页中使用一些动画效果。今天来说说实现banner图由中心点动态放大效果,实现这个效果需要用到css中的动画:animation​和关键帧:@keyframes,具体示例如下:
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-04-11 18:52
  • 阅读:156
  • countUp.js实现鼠标滑动到某个位置数字自动滚动增加的效果
  • countUp.js实现鼠标滑动到某个位置数字自动滚动增加的效果
  • 在网页开发中为了提升网页的交互效果,经常会用到使用js给网页增加一定的特效,下边就来说说使用js实现鼠标滑动到某个位置数字自动滚动增加的效果。其实这种效果有很多中解决办法,自己也可以去写,下边我们借助countUp.js来实现,关于这个js文件,我放在末尾:
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-04-08 09:20
  • 阅读:229
  • 响应式网页设计思路及注意事项
  • 响应式网页设计思路及注意事项
  • 一、什么是响应式网页响应式网页设计就是让网页具有根据设备类型应用CSS样式的能力。设计:设想、计划。设计就是把想法实现。网页设计:按照一定的设计思路布局网页内容。传统网页设计:都是针对PC端浏览器而设计的,不具备查询设备的能力,更不能对多种访问设备做出响应。传统网页设计的弊端:在移动互联网时代,传统的网页设计不适合多屏幕时代。响应式网页设计应运而生。响应式网页设计是一种设计网页的思想/方法。响应:指让我们的网页能够自动查询用户的访问设备
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-04-02 11:24
  • 阅读:133
  • css中rel的属性值都有哪些,分别代表什么意思
  • css中rel的属性值都有哪些,分别代表什么意思
  • 在HTML中,元素的rel属性用于定义当前文档与被链接文档之间的关系。这个属性在CSS的上下文中经常与样式表关联,但rel属性的用途远不止于此。以下是一些常见的rel属性值及其意义:1、stylesheet:表示被链接的文档是一个样式表。这通常用于链接CSS文件。
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-03-28 12:28
  • 阅读:266
联系客服
源码代售 源码咨询 素材咨询 联系客服
029-84538663
手机版

扫一扫进手机版
返回顶部