-
将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.imooc.com/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
提交
取消