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. 32

  32. iv = (ImageView) findViewById(R.id.iv);
  33. // 文本和图片的网络地址
  34. String url1 = "http://www.baidu.com";
  35.  
  36. String url2 = "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1183223528,3058066243&fm=116&gp=0.jpg";
  37.  
  38. loadtxt(url1);
  39.  
  40. loadimage(url2);
  41.  
  42. }
  43.  
  44. private void loadtxt(String url1) {
  45. // 从Volley中获取RequestQueue 对象
  46. RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
  47.  
  48. // 创建StringRequest
  49. StringRequest sr = new StringRequest(url1, new Listener<String>() {
  50. // 获取成功后得到String类型的文本
  51. @Override
  52. public void onResponse(String response) {
  53. tv.setText(response);
  54. }
  55. }, new ErrorListener() {
  56. // 获取失败后进入
  57. @Override
  58. public void onErrorResponse(VolleyError error) {
  59. Toast.makeText(getApplicationContext(), "错误!!", 0).show();
  60. }
  61. });
  62. // 将StringRequest添加到RequestQueue中
  63. queue.add(sr);
  64. }
  65.  
  66. private void loadimage(String url2) {
  67. RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
  68.  
  69. ImageRequest ir = new ImageRequest(url2, new Listener<Bitmap>() {
  70. // 获取成功后得到Bitmap类型的图片。 0, 0, 设置图片大小为实际大小,ARGB_8888,设置图片格式为高清大图
  71. @Override
  72. public void onResponse(Bitmap response) {
  73. iv.setImageBitmap(response);
  74. }
  75. }, 0, 0, Config.ARGB_8888, new ErrorListener() {
  76. // 获取失败后进入
  77. @Override
  78. public void onErrorResponse(VolleyError error) {
  79. Toast.makeText(getApplicationContext(), "错误!!", 0).show();
  80. }
  81. });
  82. // 将StringRequest添加到RequestQueue中
  83. queue.add(ir);
  84. }
  85.  
  86. }

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来下载文本和图片。的更多相关文章

  1. 开源框架Volley的使用《一》

    转载本专栏每一篇博客请注明转载出处地址,尊重原创.此博客转载链接地址:小杨的博客 http://blog.csdn.net/qq_32059827/article/details/52785378 本 ...

  2. 【安卓网络请求开源框架Volley源码解析系列】定制自己的Request请求及Volley框架源码剖析

    通过前面的学习我们已经掌握了Volley的基本用法,没看过的建议大家先去阅读我的博文[安卓网络请求开源框架Volley源码解析系列]初识Volley及其基本用法.如StringRequest用来请求一 ...

  3. IT观察】网络通信、图片显示、数据库操作……Android程序员如何利用开源框架

    每个Android 程序员都不是Android应用开发之路上孤军奋战的一个人,GitHub上浩如烟海的开源框架或类库就是前人为我们发明的轮子,有的轮子能提高软件性能,而有的轮子似乎是以牺牲性能为代价换 ...

  4. Cocopod上更新上传自己的开源框架供别人下载

    为了更方便的集成第三方框架有了cocopods 的, 当我们有了相对比较好的框架的时候如何更新到cocopods 供他人参考呢? 下面我一步一步带大家开源自己的框架. 第一步 把自己的框架更新到git ...

  5. 【安卓网络请求开源框架Volley源码解析系列】初识Volley及其基本用法

    在安卓中当涉及到网络请求时,我们通常使用的是HttpUrlConnection与HttpClient这两个类,网络请求一般是比较耗时,因此我们通常会在一个线程中来使用,但是在线程中使用这两个类时就要考 ...

  6. Android开源框架——Volley

    Volley 是 Google 在 2013 I/O 大会上推出的 Android 异步网络请求框架和图片加载框架.特别适合数据量小,通信频繁的网络操作.Volley 主要是通过两种 Diapatch ...

  7. Android开源框架Volley(Google IO 2013)源代码及内部实现分析

    1.Volley概述 在项目开发过 程中,博主曾写过大量的访问网络重复代码,特别是ListView adapter很难避免getView()方法不被重复调用,如果ImageView不利用缓存机制,那么 ...

  8. 开源框架Volley的使用《二》[NetWorkImageView&&LruCache&ImageLoader]

    转载本专栏每一篇博客请注明转载出处地址,尊重原创.此博客转载链接地址:小杨的博客    http://blog.csdn.net/qq_32059827/article/details/5278849 ...

  9. [Android] 开源框架 Volley 自定义 Request

    今天在看Volley demo (https://github.com/smanikandan14/Volley-demo), 发现自定义GsonRequest那块代码不全, 在这里贴一个全的. pu ...

随机推荐

  1. iOS - MVVM 架构模式

    1.MVVM 从字面意思来理解,MVVM 即 Modal View ViewModel(模型 视图 视图模型).MVC 是一个用来组织代码的权威范式,也是构建 iOS App 的标准模式.Apple ...

  2. DBCP JAVA 连接池

    package com.sinoglobal.db; import java.sql.Connection; import java.sql.DriverManager; import java.sq ...

  3. iOS JS交互

    1. 添加本地js文件, 并配置head中的属性 function increaseMaxZoomFactor() {        var element = document.createElem ...

  4. HDU1542矩形面积并

    取出纵向边按x坐标排序,在y方向上建立线段树. 每次查询当前有效长度len,ans += len*(x[i]-x[i-1]); 其中len为T[rt].len; 查询完毕后更新y方向上线段树,入边+1 ...

  5. poj1329Circle Through Three Points(三角形外接圆)

    链接 套模板 不知道有没有x,y=0情况,不过这种情况都按+号输出的. #include <iostream> #include<cstdio> #include<cst ...

  6. codeblock报__objc_class_name_xxx问题

    添加来一个class文件,在其他文件调用时,报下面这个错误: undefined reference to `__objc_class_name_Test' 右击Test这个类的文件弹出Propert ...

  7. chmod修改文件的权限/chown修改文件和目录的所有者

    ll指令的显示的信息为(当前目录下只有nameservice1一个目录): drwxr-xr-x 3 hdfs hdfs 4096 4月 14 16:19 nameservice1 上述信息分别表示: ...

  8. cpu缓存与多线程

    一.cpu缓存结构 CPU速度远高于内存(即如果只考虑CPU和内存因素,程序的性能常常受到内存访问速度的限制,内存访问和运行),为了协调CPU和内存在速度上的差异,在CPU中增加了高速缓存.和计算机存 ...

  9. smarty 学习记录

    smarty模版是比较大众化的一个模版,在php开发过程当中被很多开发者视为最友好的模版之一,学习smarty课程对于很多培训机构来说也是列入了培训课程之一,那么很多方面就需要我们学习了一. 安装首先 ...

  10. Android日常开发60条经验

    1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效. 2. 数据库表段字段常量和SQL逻辑分离,更清 ...