《Monkey Android》第15課Spinner和AutoCompleteTextView
通過本節課可以學習到的內容:
- Spinner的用法
- AutoCompleteTextView的用法
例項程式碼:
Spinner的用法
Spinner
,俗稱下拉列表,它提供了一組固定的值或選項,允許使用者從中選擇一個作為預設的狀態。
AutoCompleteTextView的用法
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 Android》第15課Spinner和AutoCompleteTextView
通過本節課可以學習到的內容: 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
第六課 相對和絕對路徑、創建和刪除目錄及cd和rm命令的使用
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流第三課Reader和FileReader
上節課我們學了位元組輸入流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 來為使用
Selenium第4課 select和alert
一、下拉框select 1.下拉框select: # select標籤且option子標籤的才適用以下方法 from selenium.webdriver.support.select import Select select = driver.find_element_by_id("nr") Se
AutoCAD2012從入門到精通中文視訊教程 第15課 圖案填充(個人收藏)
首先準備好你要填充的圖案,在此我以簡單的兩個圓來舉例操作,之後複雜的就請自行琢磨一下,方法都是差不多的。 在軟體介面上方的“常用”選單裡找到“圖案填充”工具,圖案如下: AutoCAD的圖案填充工具怎麼用? 點選“圖案填充”工具後,會切換到該工具的設定介面,如
C語言筆記 第十課 struct和union分析
第十課 struct和union分析 C語言中的struct可以看做變數的集合 struct的問題: 空結構體佔用多大記憶體? 10-1 空結構體的大小 C語言中的灰色地帶,觀點一是空結構體無意義不能存在於C語言裡面(VC10.0 /BCC),觀點二是空結構體為空集合,空集合為
C語言筆記 第九課 const和volatile分析
第九課 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;