AutoCompleteTextView和Spinner的使用方法

首先说明AutoCompleteTextView的使用方法。主要是起到自己主动填充的作用。输入keyword,假设存在该字便能够自己主动填充。代码例如以下

activity_main.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" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

    <AutoCompleteTextView
        android:id="@+id/autotextview"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:completionHint="请选择喜欢的图书"
        android:textColor="#000000"
        android:completionThreshold="1"
        />
    <Button
        android:id="@+id/btn_spinner"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Spinner 界面"/>
</RelativeLayout>

MianActivity.java

package lzl.edu.com.autocomplete;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;

public class MainActivity extends Activity {

    private AutoCompleteTextView autoTextView;
    private Button btn_spinner;
    String[] books = {"从你的全世界路过","荆棘鸟","老人与海","第一行代码","我们从未陌生过"};
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        autoTextView = (AutoCompleteTextView)findViewById(R.id.autotextview);
        btn_spinner = (Button)findViewById(R.id.btn_spinner);
        // android.R.layout.simple_dropdown_item_1line 系统提供的自己主动填充的方法。
        ArrayAdapter<String> aa = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,books);
        autoTextView.setAdapter(aa);
        btn_spinner.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,BookeSpinner.class);
                startActivity(intent);
            }
        });

    }
}

Spinner通常和arrays.xml结合集合使用。在value目录下创建arrays.xml文件。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="books">
        <item>从你的全世界路过</item>
        <item>你好,世界</item>
        <item>JAVA疯狂讲义</item>
        <item>第一行代码</item>
        <item>荆棘鸟</item>
    </string-array>
</resources>

在xml文件里建立Spinner标签

<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" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="lzl.edu.com.autocomplete.BookeSpinner">

    <Spinner
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:entries="@array/books"
        >
    </Spinner>

</RelativeLayout>

Activity中增加布局就能够了

package lzl.edu.com.autocomplete;

import android.app.Activity;
import android.os.Bundle;

public class BookeSpinner extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_booke_spinner);

    }
}

Spinnner结合Adapter的使用

BooksActivity.java

package lzl.edu.com.autocomplete;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Spinner;
import android.widget.TextView;

public class BookeSpinner extends Activity {

    Spinner spinnerbooks;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_booke_spinner);

        spinnerbooks = (Spinner)findViewById(R.id.spinnerbooks);
        BaseAdapter ba = new BaseAdapter() {
            @Override
            public int getCount() {
                return 100;
            }

            @Override
            public Object getItem(int position) {
                return position;
            }

            @Override
            public long getItemId(int position) {
                return position;
            }

            @Override
            public View getView(int position, View convertView, ViewGroup parent) {
            TextView textView = new TextView(BookeSpinner.this);
                textView.setText("第"+position+"本书");
                textView.setTextColor(Color.rgb(240, 200, 100));
                textView.setTextSize(20);
                return textView;
            }
        };
        spinnerbooks.setAdapter(ba);
    }
}

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" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="lzl.edu.com.autocomplete.BookeSpinner">

    <Spinner
        android:id="@+id/spinnerbooks"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >
    </Spinner>

</RelativeLayout>
时间: 2024-11-10 17:27:49

AutoCompleteTextView和Spinner的使用方法的相关文章

Android常用控件之AutoCompleteTextView、Spinner

概述 1.AutoCompleteTextView:相对于普通的TextView,AutoCompleteTextView的特点是可以自动提示文本,它可以通过SetAdapter()方法加载适配器. 2.Spinner:一种下拉列表. 知识内容 AutoCompletedTextView 布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="

GridView,ExpandableListView,AutoCompleteTextView和Spinner

1.GridView gridview 和昨天说的listview相似,不同的是,gridview可以设置多行显示. 结合昨天listview与gridview总结出使用的步骤(以gridview为例); <1>新建module工程,会产生一个MainActivity和layout下的main_grid.xml文件.如下所示:这个文件我理解成是整体的构架,这里面可以写ListView或者GridView.然后设置背景颜色或图片,宽和长等等. //整体构架(layout下的xml) <Re

AutoCompleteTextView和Spinner的用法

首先说明AutoCompleteTextView的用法,主要是起到自动填充的作用,输入关键字,如果存在该字便可以自动填充.代码如下 activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="

View(视图)——AutoCompleteTextView 、Spinner和消息提示

一.AutoCompleteTextView 自动提示文本输入框 1.属性:不区分大小写. 2.ArrayAdapter  适配器 数据源是String[ ]或集合,保存要提示的文本:layout文件. 3.completionThreshold:设置提示需要的最少字符数,默认是2. 二.Spinner 下拉列表 1.ArrayAdapter  适配器 数据源是String[ ]或集合,保存要提示的文本:layout文件. 2.监听器   AdapterView.OnItemSelectedLi

View(视图)——AutoCompleteTextView、Spinner

AutoCompleteTextView 一.自动提示文本输入框且不区分大小写 二.适配器ArrayAdapter 1.数据源是String[ ]或集合,保存要提示的文本 2.layout文件 三.completionThreshold 1.设置提示需要的最小字符数 2.默认是2 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://s

android AutoCompleteTextView和Spinner选中项加亮

package com.example.spinnerexample; import java.util.ArrayList; import java.util.List; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.graphics.Color; import android.view.LayoutInflater; import an

Android——AutoCompleteTextView、Spinner和消息提示

layout文件: 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools" 4 android:layout_width="ma

android下拉菜单spinner的使用方法

Spinner控件也是一种列表类型的控件,它的继承关系如下: java.lang.Object    ? android.view.View      ? android.view.ViewGroup        ? android.widget.AdapterView<Textends android.widget.Adapter>          ? android.widget.AbsSpinner           ? android.widget.Spinner android

Android零基础入门第47节:自动完成文本框AutoCompleteTextView

上一期学习的Spinner的使用,掌握的怎么样?本期一起来学习AutoCompleteTextView的使用. 一.认识AutoCompleteTextView AutoCompleteTextView是自动完成文本框,从EditText派生而出,实际上它也是一个文本编辑框,但它比普通编辑框多了一个功能:当用户输入一定字符之后,自动完成文本框会显示一个下拉菜单,供用户从中选择,当用户选择某个菜单项之后,AutoCompleteTextView按用户选择自动填写该文本框. AutoComplete