码迷,mamicode.com
首页 > 其他好文 > 详细

利用开源框架Volley来下载文本和图片。

时间:2015-11-23 16:21:58      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:

Android Volley是Android平台上很好用的第三方开源网络通信框架。使用简单,功能强大。

下载连接地址:http://download.csdn.net/detail/zhangphil/9053413

使用方法:下载Volley.jar后,直接放到Eclipse工程的libs目录下,刷新,然后就可以调用Android Volley了。

技术分享

代码如下:

 1 package com.lixu.load_txt_image;
 2 
 3 import com.android.volley.RequestQueue;
 4 import com.android.volley.Response.ErrorListener;
 5 import com.android.volley.Response.Listener;
 6 import com.android.volley.VolleyError;
 7 import com.android.volley.toolbox.ImageRequest;
 8 import com.android.volley.toolbox.StringRequest;
 9 import com.android.volley.toolbox.Volley;
10 
11 import android.app.Activity;
12 import android.graphics.Bitmap;
13 import android.graphics.Bitmap.Config;
14 import android.os.Bundle;
15 import android.text.method.ScrollingMovementMethod;
16 import android.widget.ImageView;
17 import android.widget.TextView;
18 import android.widget.Toast;
19 
20 public class MainActivity extends Activity {
21     private TextView tv;
22     private ImageView iv;
23 
24     @Override
25 
26     protected void onCreate(Bundle savedInstanceState) {
27         super.onCreate(savedInstanceState);
28         setContentView(R.layout.activity_main);
29 
30         tv = (TextView) findViewById(R.id.tv);
31         // 设置TextView的滚动条
32         tv.setMovementMethod(ScrollingMovementMethod.getInstance());
33 
34         iv = (ImageView) findViewById(R.id.iv);
35         // 文本和图片的网络地址
36         String url1 = "http://www.baidu.com";
37 
38         String url2 = "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1183223528,3058066243&fm=116&gp=0.jpg";
39 
40         loadtxt(url1);
41 
42         loadimage(url2);
43 
44     }
45 
46     private void loadtxt(String url1) {
47         // 从Volley中获取RequestQueue 对象
48         RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
49 
50         // 创建StringRequest
51         StringRequest sr = new StringRequest(url1, new Listener<String>() {
52             // 获取成功后得到String类型的文本
53             @Override
54             public void onResponse(String response) {
55                 tv.setText(response);
56             }
57         }, new ErrorListener() {
58             // 获取失败后进入
59             @Override
60             public void onErrorResponse(VolleyError error) {
61                 Toast.makeText(getApplicationContext(), "错误!!", 0).show();
62             }
63         });
64         // 将StringRequest添加到RequestQueue中
65         queue.add(sr);
66     }
67 
68     private void loadimage(String url2) {
69         RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
70 
71         ImageRequest ir = new ImageRequest(url2, new Listener<Bitmap>() {
72             // 获取成功后得到Bitmap类型的图片。 0, 0, 设置图片大小为实际大小,ARGB_8888,设置图片格式为高清大图
73             @Override
74             public void onResponse(Bitmap response) {
75                 iv.setImageBitmap(response);
76             }
77         }, 0, 0, Config.ARGB_8888, new ErrorListener() {
78             // 获取失败后进入
79             @Override
80             public void onErrorResponse(VolleyError error) {
81                 Toast.makeText(getApplicationContext(), "错误!!", 0).show();
82             }
83         });
84         // 将StringRequest添加到RequestQueue中
85         queue.add(ir);
86     }
87 
88 }

xml文件:

 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     android:id="@+id/LinearLayout1"
 4     android:layout_width="match_parent"
 5     android:layout_height="match_parent"
 6     android:orientation="vertical" >
 7 
 8     <ScrollView
 9         android:layout_width="match_parent"
10         android:layout_height="match_parent"
11         android:layout_weight="1" >
12 
13         <TextView
14             android:id="@+id/tv"
15             android:layout_width="match_parent"
16             android:layout_height="match_parent" />
17     </ScrollView>
18 
19     <ImageView
20         android:id="@+id/iv"
21         android:layout_width="match_parent"
22         android:layout_height="match_parent"
23         android:layout_weight="1" />
24 
25 </LinearLayout>

运行效果图:
技术分享

 

利用开源框架Volley来下载文本和图片。

标签:

原文地址:http://www.cnblogs.com/labixiaoxin/p/4988675.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!