專案原始碼結構圖:
假設現在有乙個新的專案,同樣是解析json資料,並將其顯示到listview中。
那麼現在考慮一下如何在兩個專案之間進行移植。
那麼需要重新寫的就是1、bean 2、adapter 3、以及所有和獲取列表資料有關、將資料載入到listvie文中有關的類。
mainactivity中通過
獲取列表資料。
public newslist getnewslist() throws使用的是apiclient.getnewslist()方法,注意的是apiclient的getnewslist是乙個類方法,具體如下:newslist list = null
; string key = "newslist_";
if (isnetworkconnected() && !isreaddatacache(key))
catch
list =(newslist) readobject(key);
if (list == null
)
throw
e; }
} else
return
list;
}
public分析apiclient.getnewslist,可以看出它是先通過http_get獲取乙個字串:static
throws
string newurl =urls.news_list;
try
catch
(exception e)
}
//發生致命的異常,可能是協議不對或者返回的內容有問題
e.printstacktrace();
throw
} catch
(ioexception e)
catch
(interruptedexception e1)
continue
; }
//發生網路異常
throw
} finally
} while (time
responsebody = responsebody.replaceall("\\p", "");
return
responsebody;
}在通過stringutils.tojsonarray將其轉換為乙個json陣列:
public最後通過newslist的parse將json資料放到newslist中。static jsonarray tojsonarray(string json) throws
jsonexception
//if (json.lastindexof("]") == json.length())
}
return
newjsonarray(json);
}
public在這裡可以看一下,newslist和news的成員變數。static newslist parse(jsonarray obj) throws
ioexception,
newslist newslist = new
newslist();
if (null !=obj)
}return
newslist;}}
news的成員變數。
public以上。class news extends
base
else
holder.title.settext(list.get(position).gettitle());
holder.time.settext(list.get(position).getpublishtime());
string imgurl =list.get(position).getfirstpicurl();
if (imgurl.endswith("portrait.gif") ||stringutils.isempty(imgurl))
else
bmpmanager.loadbitmap(imgurl, holder.img);
}return
convertview;
}
工具類 HexUtil 工具類
hexutil 源 如下 十六進製制處理工具類 public class hexutil param hex 需要轉換的16進製制字串 return 以位元組陣列返回轉換後的結果 public static byte hexstringtobyte string hex return result ...
工具類 BcdUtil 工具類
bcdutil 源 如下所示 public class bcdutil return true 功能描述 對給定的資料進行bcd轉換,如果長度為奇數,則在最前端補零 param val 待轉換資料,需滿足canbebcd return 以位元組陣列的形式返回壓縮後的內容 public static ...
集合工具類和陣列工具類
集合的工具類 collections 筆試題 說出collection與collections的區別?1.collection是乙個單列集合的跟介面,collections是操作集合物件的乙個工具類 collections常見方法 1.對list進行排序 sort listlist sort lis...