首先说明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>

最新文章

  1. vue 实现分转元的 过滤器
  2. paper 127:机器学习中的范数规则化之(二)核范数与规则项参数选择
  3. Sample a balance dataset from imbalance dataset and save it(从不平衡数据中抽取平衡数据,并保存)
  4. SQL Server 创建表 添加主键 添加列常用SQL语句
  5. node.js在linux下的安装
  6. 利用并查集求最大生成树和最小生成树(nlogn)
  7. noip赛前小结2
  8. (转)iOS应用程序生命周期(前后台切换,应用的各种状态)详解
  9. 关于APP,原生和H5开发技术的争论
  10. 安卓(android)建立项目时失败,出现Android Manifest.xml file missing几种解决方法?(总结中)
  11. 给VS自动添加注释
  12. UIImagePickerController 相关
  13. 更全面的聊聊PRINCE2是什么
  14. &#39;gbk&#39; codec can&#39;t encode character解决方法
  15. 使用nmon监控Linxu服务器性能
  16. Allegro PCB Design GXL (legacy) 由零散的对象构成一个Shape
  17. 【Graphite】使用dropwizard.metrics向Graphite中写入指标项数据
  18. [文件]Linux文本处理常用命令总结
  19. vue的安装
  20. s11 day Linux 和nginx 部署

热门文章

  1. UVA 10127- Ones 数学
  2. 求区间连续不超过K段的最大和--线段树+大量代码
  3. Linux学习之基本介绍
  4. 14. Longest Common Prefix[E]最长公共前缀
  5. 双系统下Ubuntu安装教程
  6. Spark SQL 编程API入门系列之SparkSQL的入口
  7. Spark任务调度
  8. 前端学习笔记-CSS
  9. 子线程创建AlertDialog错误
  10. 01《UML大战需求分析》阅读笔记之一