-
將JSON格式數據轉變為 NewsBean對象,添加到List。 1. 獲得 Json 的Object對象:jsonObject = new JSONObject(jsonString); 2. 獲得 Json 數組(數組名叫data):JSONArray jsonArray = jsonObject.getJSONArray("data"); 3. 使用for循環,遍歷這個數組,將數組的每一個元素都轉變為 NewsBean對象,然后將NewsBean對象添加到 List。查看全部
-
// 通過inputStream讀取網頁信息,我們定義一個方法用于讀取輸入流: private String readStream(InputStream is) { InputStreamReader isr; String result = ""; try { String line = ""; isr = new InputStreamReader(is, "utf-8");// inputstream傳入的為字節流,通過inputstreamreader將字節流轉換為字符流 BufferedReader br = new BufferedReader(isr);// 通過bufferedreader將輸入流讀取出來 while ((line = br.readLine()) != null) { result += line;// 拼接到字符串result里面 } } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return result; }查看全部
-
通過inputstream讀取網絡內容 inputstream傳入的為字節流,通過inputstreamreader將字節流轉換為字符流 通過bufferedreader將輸入流讀取出來 readstream()讀取數據流,獲取到字符串 readstream(new URL(url).openStream());這段代碼的功能與url.openConnection().getInputStream()相同,可根據URL直接聯網獲取網絡數據,簡單,返回值類型為inputstream // 將 JSON 字符串轉換為我們想要的數據 private List<NewsBean> getJsonData(String url) { List<NewsBean> newsBeansList = new ArrayList<NewsBean>(); try { //new URL(url).openStream()等同于url.openConnection().getInputStream(),返回值類型為InputStream String jsonString = readStream(new URL(url).openStream());// readstream()讀取數據流,獲取到字符串 Log.d("xyz", jsonString); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); return newsBeansList; }查看全部
-
轉載自筆記 http://www.xianlaiwan.cn/api/teacher?type=4&num=30上面的JSON數據便是我們所要異步加載的數據。 要點: 1. 獲取JSON格式數據,再把JSON格式的數據轉化成我們所需要的數據,加載到 ListView 里面。 2. 創建新的類NewsBean,用于封裝JSON格式的數據。每一個NewsBean都代表一行數據。在doInBackground()中的第三個參數便設置為List<NewsBean>,接下來List<NewsBean>會傳到adapter(適配器)中,最后加載給ListView,就可以在界面上顯示出JSON數據所代表的內容信息。 3. 在AsyncTask的 doInBackground() 中獲取到傳遞進來的URL,也就是JSON數據所在的網址。通過API返回JSON格式的數據,并由此構造出由NewsBean組成的List。查看全部
-
TextView控件xml屬性maxLines可以設定文字的行數查看全部
-
使用異步加載的原因: 1.android單線程模型 2.耗時操作阻塞UI線程 異步加載最常用的兩種方式: 1.多線程\線程池 2.AsyncTask查看全部
-
json 數據查看全部
-
新聞列表布局查看全部
-
f'f'f查看全部
-
1、獲取起始項和結束項 2、創建數組創建保存url 3、獲取圖片獲取指定的數組部分的圖片查看全部
-
1、加載完成和加載滑動時造成卡頓 2、當listview滾動時不加載數據已達到效果 3、實現AbsListView.OnScrollListener 接口 4、changge狀態切換調用 onScroll滾動整個過程 5、查看全部
-
1、將其視為map 2、添加 判斷是否存在 .put(key , value); 3、AsyncTask 判斷為空再進行下載 不為則直接設置 4、執行下載將下載好的bitmap加入緩存 5、創建一個imageloader 對象從而只有一個緩存區域已達到數據緩存的效果。查看全部
-
1、LruCache鍵值對保存數據 2、獲取部分內容為緩存空間 3、Runtime.getRunTime().maxMemory() 獲取最大的緩存空間 4、LruCache初始化 創建匿名內部類 重寫 sizeof(String key , Bitmap value)方法返回value.getByteCount() (返回數據的大小)每次存入緩存的時候調用 5、添加獲取addLruCache(String key , Bitmap value)的方法 和getLruCache(String key)的方法。查看全部
-
1、給imageView設置一個setTag和對應的url綁定查看全部
-
1、創建異步線程耗時操作使用方法獲取數據 2、創建一個方法使得字節流轉換為字符流 InputStream-----> InputStreamReader--->BufferedReader查看全部
舉報
0/150
提交
取消