1. 程式人生 > >《Monkey Android》第15課Spinner和AutoCompleteTextView

《Monkey Android》第15課Spinner和AutoCompleteTextView

通過本節課可以學習到的內容:

  • Spinner的用法
  • AutoCompleteTextView的用法

例項程式碼:

Spinner的用法

Spinner,俗稱下拉列表,它提供了一組固定的值或選項,允許使用者從中選擇一個作為預設的狀態。

AutoCompleteTextView的用法

AutoCompleteTextView,自動完成文字框,使用者在輸入時給予補全提醒。

效果圖

Spinner

AutoCompleteTextView

Activity的原始碼

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的原始碼

<?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原始碼

<?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,希望能夠在實際中加以運用!

關注我,我們一起進步

相關推薦

Monkey Android15SpinnerAutoCompleteTextView

通過本節課可以學習到的內容: Spinner的用法 AutoCompleteTextView的用法 例項程式碼: Spinner的用法 Spinner

15 右值引用(2)_std::move移動語義

可見 div 強制轉換 let 技術分享 移動語義 ptr align 講解 1. std::move (1)std::move的原型 template<typename T> typename remove_reference<T>::type&

15講++規則默認值對象

號碼 idt 綁定 至少 pla 默認 use 電話 對象 在xscj庫中定義1個規則,限制聯系電話的格式為“(區號)電話號碼”,其中區號為3位,電話號碼至少為6位 。 use xscj go create rule r_電話格式 as @

Python----IO序列化

python一、文件IO常用操作1、open打開、read讀取、write寫入、close關閉、readline行讀取、readlines多行讀取、seek文件指針操作、tell指針位置2、open(file,mode="r",buffering=-1,encoding=None,errors=None,ne

相對絕對路徑、創建刪除目錄及cdrm命令的使用

20180326一、相對路徑和絕對路徑 pwd命令: 打印查看當前路徑 絕對目錄就是以/(根)開頭的,相對路徑就是相對當前目錄,不是以/(根)開頭的。 二、cd命令cd 進入到一個目錄cd - 進入上次的目錄(相當於遙控器上的相互交替的按鍵)cd ~ 回到用戶家目錄cd .. 進入到上一級目錄 三、創

Linux 15天 vim腳本基礎

行為 var 特殊變量 原來 環境變量 form list 可視化 文本編輯 Linux 第15天 vim和腳本基礎 時間: 20180801 vim 文本編輯工具 命令模式 y 復制 p 粘貼 g 定位至文檔至第一行 G 定位至文檔最後一行 ^ 定位

Android adb常用指令

ice cross web 文件 data shel 別人 pin parent 1啟動adb服務adb start-server2停止adb服務adb kill-server3顯示所有的設備adb devicesC:\Users\Administrator>adb

Android 編譯錯誤分析

設備 錯誤頁面 純虛函數 error: nim 虛函數 指令 信息 target 1)Error 1C/C++ Problem問題 DescriptionDescription Resource Path Location Type make.exe: *** [obj/l

Android 安裝異常處理

manager ems sources man ade known and lib 裏程碑 1 已安裝了存在簽名沖突的同名數據包 通過軟件管理,將即將安裝的XXX.apk的同名軟件卸載,然後進入到安裝包中,點擊XXX.apk2 拷貝文件夾失敗 打開設置,選擇存儲

2 變數物件

一、常見的資料--數字   1-python語言裡的一切資料都是物件   2-1,2,3、-5678   3-python2中int--整型、long--長整型   4-python3中只有int型,沒有long   5-type()---獲取一個數據的型別  print(type(100))

IO流ReaderFileReader

  上節課我們學了位元組輸入流InputStream,這節課來學學位元組輸入流Reader   public abstract class Reader implements Readable, Closeable 可以看到Reader是一個抽象類,實現了Readab

4 列表元組

需要 move 得到 item code lin 末尾 clas ever 一、列表 1、列表的定義:用一個中括號--[ ]表示列表。例如,[1]表示列表有一個元素1 >>> alist = [1] >>> alist [1] >

C語言11——typedof#define

typedef 可以使用它來為型別取一個新的名字。 typedef unsigned char BYTE; BYTE b1, b2; 按照慣例,定義時會大寫字母,以便提醒使用者型別名稱是一個象徵性的縮寫,但也可以使用小寫字母。 使用 typedef 來為使用

Selenium4 selectalert

一、下拉框select 1.下拉框select: # select標籤且option子標籤的才適用以下方法 from selenium.webdriver.support.select import Select select = driver.find_element_by_id("nr") Se

AutoCAD2012從入門到精通中文視訊教程 15 圖案填充(個人收藏)

首先準備好你要填充的圖案,在此我以簡單的兩個圓來舉例操作,之後複雜的就請自行琢磨一下,方法都是差不多的。 在軟體介面上方的“常用”選單裡找到“圖案填充”工具,圖案如下: AutoCAD的圖案填充工具怎麼用? 點選“圖案填充”工具後,會切換到該工具的設定介面,如

C語言筆記 structunion分析

第十課 struct和union分析 C語言中的struct可以看做變數的集合 struct的問題: 空結構體佔用多大記憶體? 10-1 空結構體的大小 C語言中的灰色地帶,觀點一是空結構體無意義不能存在於C語言裡面(VC10.0 /BCC),觀點二是空結構體為空集合,空集合為

C語言筆記 constvolatile分析

第九課 const和volatile分析 const只讀變數 const修飾的變數是隻讀的,本質還是變數 const修飾的區域性變數在棧上分配空間 const修飾的全域性變數在全域性資料區分配空間 const只在編譯期有用,在執行期無用 const修飾的變數不是真的常量,它只是告

C語言筆記 goto void分析

第八課 goto 和void分析 遭人遺棄的goto 高手潛規則:禁用goto 專案經驗:程式質量與goto的出現次數成反比 最後的判斷:將goto打入冷宮 8-1 goto副作用分析 void的意義 void修飾函式返回值和引數 如果函式沒有返回值,那麼應該將其宣告為v

Spark基礎到高階 安裝測試spark

二  spark安裝 2.1  linux的機器部署 這裡我們使用的是叢集模式來安裝,準備兩臺以上Linux伺服器,安裝好JDK1.8。 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht

15:RDD建立內幕徹底解密

內容: 1.RDD建立的幾個方式 2.RDD建立實戰 3.RDD內幕   第一個RDD:代表了星火應用程式輸入資料的來源 通過轉型來對RDD進行各種運算元的轉換實現演算法 RDD的3種基本的建立方式 1,使用程式中的集合建立RDD; 2,使用本地檔案系統建立RDD;