Android為spinner設置適配器,Android Spinner與適配器模式詳解及實例代碼

最近做項目對Android Spinner 使用,這里簡單寫個小例子,來測試如何使用。

Spinner

是一個下拉列表,往安卓界面中拖拽一個Spinner控件,在屬性中設置Android:entries=“@array/spinner_data”

其中spinner_data為在string中設置的數組。數組中由固定寫好的值。此時便可在界面設置好下拉列表。

android:id="@+id/spinner1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignLeft="@+id/textView1"

android:layout_below="@+id/textView1"

android:layout_marginTop="17dp"

android:entries="@array/spinner_data"/>

當然為了用戶體驗好,可以設置 android:spinnerMode="dialog"屬性,可以使下拉列表有彈出框。

適配器:

適配器主要負責從數據源中抓取數據,傳向各個UI組件。主要的適配器adapter由ArrayAdapter和BaseAdapter。 即適配器負責從某個數據源比如數組中得到數據傳向Spinner,顯示在界面上。

首先定義數據源

private String[] ss=new String[]{

"貓咪",

"老虎",

"獅子",

};

數據源2

private List list=new ArrayList();

list.add("百度");

list.add("騰訊");

list.add("阿里巴巴");

其次定義一個類Myadapter繼承與抽象類BaseAdapter,抽象方法有四個。

private class Myadapter extends BaseAdapter{

@Override

public int getCount() {

// TODO Auto-generated method stub

return ss.length;

}

@Override

public Object getItem(int position) {

// TODO Auto-generated method stub

return null;

}

@Override

public long getItemId(int position) {

// TODO Auto-generated method stub

return 0;

}

@Override

public View getView(int position, View convertView, ViewGroup parent) {

// TODO Auto-generated method stub

TextView textView=new TextView(MainActivity.this);

textView.setText(ss[position]);

return textView;

}

然后再主函數中

Spinner spinner=(Spinner) findViewById(R.id.spinner1);

BaseAdapter adapter=new Myadapter();

spinner.setAdapter(adapter);

先找到Spinner控件,并且實例化new一個adapter。通過adapter適配器來抓取數據源ss中的數據。

BaseAdapter適配器最重要的方法是getcount()以及getview()方法。前者返回數據源的長度,后者進行一些操作。

當然可以使用更簡單的ArrayAdaper適配器。

Spinner spinner=(Spinner) findViewById(R.id.spinner1);

ArrayAdapter adapter=new ArrayAdapter(this,android.R.layout.simple_spinner_item,ss);

spinner.setAdapter(adapter);

通過以上語句,可以直接定位在數組ss中。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458832.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458832.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458832.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

web框架-Struts開始

問題: 為什么有structs 作為一種框架(frameset)可以與傳統的mvc進行比較? MVC是一種模式數據處理、顯示和數據輸入分開,來規范開發,但是卻又并不規范。可以這樣想:有三家公司,他們對…

加快上架方法

估計最近蘋果app應用上架的比較多,審核比較慢,現在一個app從提交到上架短則7,8天,長則2,3個星期。我在實際上線應用時,總結了一個簡單實用的小技巧,可以加快上架時間,最近使用這種方…

接口自動化測試 返回html,接口自動化測試實戰(更新完畢)

前言自動化沒練習的項目怎么辦?自動化已經成為測試的必備技能之一了,所以,很多想跳槽的測試朋友都在自學,特別是最實用的接口自動化,但是很多人因為沒有可以練手的項目而苦惱,最終導致缺乏實戰經驗&#xf…

Opencv 圖像增強算法 圖像檢測結果及代碼

****************************************************************************************************************************************** 紅:數字圖像處理視頻教程(兩部) {中科院版36講視頻教程 電子科大版70講視頻教程&#x…

php Hash Table(四) Hash Table添加和更新元素

HashTable添加和更新的函數: 有4個主要的函數用于插入和更新HashTable的數據: int zend_hash_add(HashTable *ht, char *arKey, uint nKeyLen,void **pData, uint nDataSize, void *pDest); int zend_hash_update(HashTable *ht, char *arKey, uint nKeyLen, void …

山寨“餓了么”應用中添加菜品數量按鈕效果

山寨“餓了么”應用中添加菜品數量按鈕效果 本人視頻教程系類 iOS中CALayer的使用 最終效果: 山寨源頭: 源碼:(此源碼解決了重用問題,可以放心的放在cell中使用) AddAndDeleteButton.h 與 AddAndDeleteBu…

html間數據傳送,Express框架與html之間如何進行數據傳遞(示例代碼)

關于Node.js 的Express框架介紹,推薦看菜鳥教程的Express框架,很適合入門,這里不再贅述,這里主要講一下Express框架與html之間如何進行數據傳遞我采用的是JQuery的Ajax()向后臺傳參方式(url傳參)1、Type屬性為Get時:(1…

數字圖像去噪典型算法及matlab實現

圖像去噪是數字圖像處理中的重要環節和步驟。去噪效果的好壞直接影響到后續的圖像處理工作如圖像分割、邊緣檢測等。圖像信號在產生、傳輸過程中都可能會受到噪聲的污染,一般數字圖像系統中的常見噪聲主要有:高斯噪聲(主要由阻性元器件內部產…

pat1100. Mars Numbers (20)

1100. Mars Numbers (20) 時間限制400 ms內存限制65536 kB代碼長度限制16000 B判題程序Standard 作者CHEN, YuePeople on Mars count their numbers with base 13: Zero on Earth is called "tret" on Mars.The numbers 1 to 12 on Earch is called "jan, feb, …

【USACO1.1】Broken Necklace

題意 一個環形項鏈,有rbw三種珠子,r代表red,b代表blue,w代表white,從任意一個位置斷開,兩端分別取珠子,同一端取的珠子要相同顏色,w可以染成想要的顏色,即既可當作r也可以…

html+注釋格式化,使用xml注釋來生成格式化的html輸出

我試圖從我在xml文件中的注釋中生成一個格式良好的html文檔。目前我有一個xml文件,用于生成xml表格的html列表。為了讓我添加有關表格的評論,我手動將注釋添加到輸出html文件中。使用xml注釋來生成格式化的html輸出我想如果可能將html代碼放在xml文件中作…

圖像增強-圖像銳化

圖像銳化主要影響圖像中的低頻分量,不影響圖像中的高頻分量。 圖像銳化的主要目的有兩個: 1.增強圖像邊緣,使模糊的圖像變得更加清晰,顏色變得鮮明突出,圖像的質量有所改善,產生更適合人眼觀察和識別的圖像…

[譯]git revert

git revert git revert用來撤銷一個已經提交了的快照. 但不是從項目歷史中移除這個commit, 而是生成一個新的commit, 老的commit還是保留在歷史項目里面的. 這樣做的好處是防止了項目丟失歷史. 用法 git revert <commit>生成一個新的commit, 撤銷老的<commit>的所有…

圖像二值化算法總結

****************************************************************************************************************************************** 紅&#xff1a;數字圖像處理視頻教程&#xff08;兩部&#xff09; {中科院版36講視頻教程 電子科大版70講視頻教程&#xff…

html 替換反斜杠,在URL直接替換反斜杠反斜杠

我們有一個系統&#xff0c;基于Moodle的平臺&#xff0c;在這里的文件是這樣引用&#xff1a;在URL直接替換反斜杠反斜杠的http&#xff1a;// [服務器] /file.php/3/LR4/info/ index.html的現在&#xff0c;這個偉大的工程&#xff0c;但是我們的一些老師錯誤地使用落后的斜杠…

VMware橋接模式無法連網

2019獨角獸企業重金招聘Python工程師標準>>> #VMware橋接模式無法連網 在VMware上裝了個CentOS7&#xff0c;使用橋接模式連網&#xff0c;開始使用的時候沒有問題&#xff0c;可以正常上網。最近打開的時候發現上不了網了&#xff0c; 使用ifconfig查看也沒有分配到…

Java 7 中 NIO.2 的使用——第四節 文件和目錄

Files類提供了很多方法用于檢查在于你真正實際去操作一個文件或目錄。這些方法強烈推薦&#xff0c;也非常有用&#xff0c;也能避免很多異常的發生。例如&#xff0c;一個很好的習慣就是在你試著移動一個文件從一個地方到另一個地方的時候&#xff0c;先檢查文件是否存在。 檢…

計算機二級access知識點6,2019年計算機二級ACCESS考試知識點:關系數據模型

【導語】2019年計算機二級考試備考正在進行中&#xff0c;為了方便考生及時有效的備考&#xff0c;那么&#xff0c;無憂考網為您精心整理了2019年計算機二級ACCESS考試知識點&#xff1a;關系數據模型&#xff0c;歡迎大家的關注。如想獲取更多計算機二級考試的備考資料&#…

乘方取模計算(模冪計算)

乘方取模計算也稱為模冪計算&#xff0c;在密碼系統中經常使用&#xff0c;是不可缺少的。 使用本程序可以解HDU2035&#xff0c;只需要考慮輸入和輸出。 /** 乘方取模** 已知給定的正整數a、n和m&#xff0c;計算x的值&#xff0c;a^n x (mod m)。** 二分法用在這里也很有效果…

Moldflow中文版注塑流動分析案例導航視頻教程

http://item.taobao.com/item.htm?spma1z10.5.w4002-9510581626.18.30lDTO&id43054534418 QQ&#xff1a;2911984429 http://aidem.lingw.net/