前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《Monkey Android》第15课Spinner和AutoCompleteTextView

《Monkey Android》第15课Spinner和AutoCompleteTextView

作者头像
GitOPEN
发布2019-01-29 10:04:51
5740
发布2019-01-29 10:04:51
举报
文章被收录于专栏:来自GitOPEN的技术文摘

通过本节课可以学习到的内容:

  • Spinner的用法
  • AutoCompleteTextView的用法

实例代码:

运行效果参见本课程示例App:安卓猴Demos

github地址:https://github.com/opengit/MonkeyAndroid


Spinner的用法

Spinner,俗称下拉列表,它提供了一组固定的值或选项,允许用户从中选择一个作为默认的状态。

AutoCompleteTextView的用法

AutoCompleteTextView,自动完成文本框,用户在输入时给予补全提醒。

效果图

Spinner和AutoCompleteTextView
Spinner和AutoCompleteTextView
Spinner和AutoCompleteTextView
Spinner和AutoCompleteTextView

Activity的源码

代码语言:javascript
复制
package com.sunjiajia.monkeyandroid;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Spinner;

/**
 * Created by monkey on 1/3/16.
 */
public class SpinnerAutoCompleteTextViewActivity extends BaseActivity {
  @Override public int giveViewResId() {
    return R.layout.activity_spinner_autocompletetextview;
  }

  private Spinner mSpinnerCity;
  private String[] mDatas;
  private AutoCompleteTextView tvAc;

  @Override protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    intViews();
    initData();
    confingViews();
  }

  private void confingViews() {
    setSpinner();
    setAutoCompleteTextView();
  }

  private void setAutoCompleteTextView() {

    ArrayAdapter<CharSequence> adapter03 =
        ArrayAdapter.createFromResource(this, R.array.av_male, android.R.layout.simple_list_item_1);
    tvAc.setAdapter(adapter03);
  }

  private void setSpinner() {
    //通过适配器来进行动态的数据填充
    // 第一种:
/*    ArrayAdapter<String> adapter01 =
        new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, mDatas);
    mSpinnerCity.setAdapter(adapter01);*/

    ArrayAdapter<CharSequence> adapter02 = ArrayAdapter.createFromResource(this, R.array.city,
        android.R.layout.simple_list_item_1);
    mSpinnerCity.setAdapter(adapter02);
  }

  private void intViews() {
    mSpinnerCity = (Spinner) findViewById(R.id.spinner_city);
    tvAc = (AutoCompleteTextView) findViewById(R.id.tv_autocomplete);
  }

  protected void initData() {
    mDatas = new String[] { "动态数据Spinner", "北京", "上海", "深圳", "广州", "洛杉矶", "纽约", "华盛顿" };
  }
}

布局文件XML的源码

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical"
    >


  <!--
       android:entries="@array/av_male"
          用来绑定静态的array数据。
  -->

  <Spinner
      android:id="@+id/spinner_male"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:entries="@array/av_male"
      />

  <Spinner
      android:layout_marginTop="30dp"
      android:id="@+id/spinner_city"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      />


  <!--
      android:completionThreshold="1"
        用来设置第几个字符开始提示;
  -->


  <AutoCompleteTextView
      android:id="@+id/tv_autocomplete"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:completionThreshold="1"
      android:hint="请输入侍寝的女优名字"
      />
</LinearLayout>

values/arrays.xml源码

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<resources>
  <array name="av_male">
    <item>静态数据Spinner</item>
    <item>苍井空</item>
    <item>苍小妹</item>
    <item>苍二妹</item>
    <item>朝桐光</item>
    <item>朝小姐</item>
    <item>朝美女</item>
    <item>小泽玛利亚</item>
    <item>小仓美女</item>
    <item>西翔野</item>
    <item>西门庆</item>
    <item>孙静雅</item>
    <item>孙悟空</item>
    <item>波多野结衣</item>
    <item>菠萝菠萝蜜</item>
  </array>

  <array name="city">
    <item>动态填充数据2</item>
    <item>北京</item>
    <item>上海</item>
    <item>深圳</item>
    <item>广州</item>
    <item>洛杉矶</item>
    <item>纽约</item>
    <item>华盛顿</item>
  </array>
</resources>

下课

这一节课,我们主要学习了Spinner和AutoCompleteTextView,希望能够在实际中加以运用!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016/04/11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Spinner的用法
  • AutoCompleteTextView的用法
  • 效果图
  • Activity的源码
  • 布局文件XML的源码
  • values/arrays.xml源码
  • 下课
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档