-
異步加載 接上一筆記 4. NewsAdapter的創建 (略) 5. 最后在NewsAsyncTask的onPostExecute()方法中要設置相應的adapter給ListView protected void onPostExecute(List<NewsBean> newsBeanList) { // TODO Auto-generated method stub super.onPostExecute(newsBeanList); //這里的newsBeanList是在doInBackground()方法中返回的 NewsAdapter newsAdapter = new NewsAdapter(MainActivity.this, newsBeanList); mListView.setAdapter(newsAdapter); }查看全部
-
異步加載 1. 主線程中不能做耗時操作,只能更新UI 下面的例子 2. 獲取jsonData url = http://www.xianlaiwan.cn/api/teacher?type=4&num=30 下面的openStream參數是從URL參數中new URL(url).openStream()獲取的。 private String readStream(InputStream openStream) { InputStreamReader isr; String result = ""; try { String line = ""; //將InputStream類的字節流轉換成字符流 isr = new InputStreamReader(openStream, "utf-8"); //轉存在BufferedReader中 BufferedReader br = new BufferedReader(isr); while((line = br.readLine())!=null) { result+=line; } } return result; } 3. 解析json數據到List<NewsBean>中 (如圖),通過如下for循環就可以將jsonString原始字符數據導入到每個NewsBean對象中。 for (int i = 0; i<jsonArray.length(); i++) { jsonObject = jsonArray.getJSONObject(i); newsBean = new NewsBean(); //從jsonObject中得到每個元素數據給newsBean newsBean.image = jsonObject.getString("picSmall"); newsBean.title = jsonObject.getString("name"); newsBean.content = jsonObject.getString("description"); newsBeanList.add(newsBean); } 最后通過newsBeanList.add(newsBean)組成一個List<NewsBean>對象,這是構成Adapter適配器的原始數據。查看全部
-
避免listview滑動時圖片錯亂,使用setTag查看全部
-
練習URL地址: http://www.xianlaiwan.cn/api/teacher?type=4&num=30查看全部
-
講的不錯,贊一個查看全部
-
biji1查看全部
-
android異步加載總結查看全部
-
結束了,看完了,給老師贊一個^ω^。查看全部
-
講的真心不錯,特別是緩存處理,和錯位的解決查看全部
-
1.least recently used cache 2.getByteCount查看全部
-
避免listview滑動時圖片錯亂,setTag終于有用了!查看全部
-
網絡獲取字符串格式數據,簡單粗暴!查看全部
-
圖片還需要再一次異步操作加載查看全部
-
緩存,避免重復下載,節省流量;提高listView流暢度查看全部
-
老師,講的真好,查看全部
舉報
0/150
提交
取消