最近在上手一個app做爲練手,是關於失物招領的,其中要實現的一個功能是從雲端讀取數據展現在app的listview當中,其實這個功能挺常見的,不過這裏仍是拿來分享一下,主要介紹我解決的過程以及思路。
我認爲要注意的!
1.Fragment中如何findbyview?
2.使用simpleAdapter綁定數據
3.如何處理雲端獲得的數據
4.listview如何展現數據的一些思路
5.處理數據中list與map的應用
6.。。。。
本例中關於雲端數據使用了bmob後端雲作爲數據存儲,有關bmob的使用這裏不加贅述,想進一步瞭解的可自行搜索學習。
首先咱們先來分析要實現的功能場景,如今雲端存儲着一些數據,咱們要用app將這些數據讀取到而且展現出來,所以咱們須要一個layout,裏面有個listvie做爲展現數據使用,另外對於數據的處理咱們爲每個item自定義樣式,這裏須要一個list_item做爲展現每一項數據使用。同時咱們應該也有一個數據表,定義雲端要存儲的數據類型等,有了後臺數據,也有了展現數據的容器,下一步咱們就是要把雲端數據與listview聯繫起來,畢竟數據是要展現給用戶看的,因此須要適配器,這裏咱們選擇simpleAdapter。
第一,建立佈局。
這是爲每項數據展現用的佈局
佈局效果圖
含有listview的layout
效果圖
第二,咱們須要建立一個數據表
關於數據表的建立,bmob有相應的開發文檔,上圖代碼中繼承的父類BmobObject也是bmob提供的。
以上操做都比較簡單,接下來咱們主要說一下有關數據處理的問題,當咱們建立號數據表以後,咱們能夠在bmob後端數據白哦中進行數據的增長,增長的是數據就是咱們要讀取的數據,假設你已經了稍微瞭解了一下bmob那麼根據開發文檔,咱們使用一下方法獲取數據
這個方法是bmob提供的,用他能夠獲取雲端存儲的數據,咱們分析發現獲取的數據存放在一個list集合當中,並且根據list的泛型能夠知道,存放的數據類型是FoundData對象,基於此咱們後續想要利用這些數據的話就要對獲得的數據list進行處理。
在處理數據以前讓咱們先想明白另一個問題,那就是適配器,咱們知道適配器是鏈接前端顯示與後臺數據的一個橋樑,選擇合適的適配器很重要,根據獲得的數據每項都是一個對象,咱們這裏能夠選擇使用simpleAdapter來完成數據的適配。
選擇好適配器以後咱們來對數據進行處理,咱們使用simpleAdapter進行數據適配,那就要看這個適配器須要什麼類型的數據了,根據simpleAdapter的構造函數可知,simpleAdapter中須要的數據對象是一個list集合,並且這個list集合中的每個對象又是一個map集合,所以,咱們須要將獲得的數據轉換成一個list集合而且每一個元素又都是map集合,由於獲得的數據也是個list集合,不過集合中元素是FoundData對象,所以咱們能夠使用一個map集合來接收穫得的數據
咱們如今對獲得的數據list進行取值處理,咱們使用for循環遍歷list的數據,將獲得的數據用hashmap存儲,這樣咱們就獲得了雲端數據,而後將雲端數據的hashmap添加到咱們建立的list當中,這個list中的每個元素都是一個map集合。
而後咱們處理適配器,將數據佈局填充到適配器,而且爲listview設置適配器。
到此,咱們就成功讀取到存儲在bmob上的數據了,這個demo主要是針對在bmob上存儲的數據該如何讀取而且使用,其中涉及到的一些處理方法在有些場景中仍是能夠參考的。
因爲還在進階當中,以上如有不對之處還望指出,形成不便之處還請見諒!