利用开源框架Volley来下载文本和图片。
Android Volley是Android平台上很好用的第三方开源网络通信框架。使用简单,功能强大。
下载连接地址:http://download.csdn.net/detail/zhangphil/9053413
使用方法:下载Volley.jar后,直接放到Eclipse工程的libs目录下,刷新,然后就可以调用Android Volley了。

代码如下:
package com.lixu.load_txt_image; import com.android.volley.RequestQueue;
import com.android.volley.Response.ErrorListener;
import com.android.volley.Response.Listener;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.ImageRequest;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley; import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.os.Bundle;
import android.text.method.ScrollingMovementMethod;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast; public class MainActivity extends Activity {
private TextView tv;
private ImageView iv; @Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); tv = (TextView) findViewById(R.id.tv);
32
iv = (ImageView) findViewById(R.id.iv);
// 文本和图片的网络地址
String url1 = "http://www.baidu.com"; String url2 = "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1183223528,3058066243&fm=116&gp=0.jpg"; loadtxt(url1); loadimage(url2); } private void loadtxt(String url1) {
// 从Volley中获取RequestQueue 对象
RequestQueue queue = Volley.newRequestQueue(getApplicationContext()); // 创建StringRequest
StringRequest sr = new StringRequest(url1, new Listener<String>() {
// 获取成功后得到String类型的文本
@Override
public void onResponse(String response) {
tv.setText(response);
}
}, new ErrorListener() {
// 获取失败后进入
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getApplicationContext(), "错误!!", 0).show();
}
});
// 将StringRequest添加到RequestQueue中
queue.add(sr);
} private void loadimage(String url2) {
RequestQueue queue = Volley.newRequestQueue(getApplicationContext()); ImageRequest ir = new ImageRequest(url2, new Listener<Bitmap>() {
// 获取成功后得到Bitmap类型的图片。 0, 0, 设置图片大小为实际大小,ARGB_8888,设置图片格式为高清大图
@Override
public void onResponse(Bitmap response) {
iv.setImageBitmap(response);
}
}, 0, 0, Config.ARGB_8888, new ErrorListener() {
// 获取失败后进入
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getApplicationContext(), "错误!!", 0).show();
}
});
// 将StringRequest添加到RequestQueue中
queue.add(ir);
} }
xml文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" > <ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1" > <TextView
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</ScrollView> <ImageView
android:id="@+id/iv"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1" /> </LinearLayout>
运行效果图:
利用开源框架Volley来下载文本和图片。的更多相关文章
- 开源框架Volley的使用《一》
		
转载本专栏每一篇博客请注明转载出处地址,尊重原创.此博客转载链接地址:小杨的博客 http://blog.csdn.net/qq_32059827/article/details/52785378 本 ...
 - 【安卓网络请求开源框架Volley源码解析系列】定制自己的Request请求及Volley框架源码剖析
		
通过前面的学习我们已经掌握了Volley的基本用法,没看过的建议大家先去阅读我的博文[安卓网络请求开源框架Volley源码解析系列]初识Volley及其基本用法.如StringRequest用来请求一 ...
 - IT观察】网络通信、图片显示、数据库操作……Android程序员如何利用开源框架
		
每个Android 程序员都不是Android应用开发之路上孤军奋战的一个人,GitHub上浩如烟海的开源框架或类库就是前人为我们发明的轮子,有的轮子能提高软件性能,而有的轮子似乎是以牺牲性能为代价换 ...
 - Cocopod上更新上传自己的开源框架供别人下载
		
为了更方便的集成第三方框架有了cocopods 的, 当我们有了相对比较好的框架的时候如何更新到cocopods 供他人参考呢? 下面我一步一步带大家开源自己的框架. 第一步 把自己的框架更新到git ...
 - 【安卓网络请求开源框架Volley源码解析系列】初识Volley及其基本用法
		
在安卓中当涉及到网络请求时,我们通常使用的是HttpUrlConnection与HttpClient这两个类,网络请求一般是比较耗时,因此我们通常会在一个线程中来使用,但是在线程中使用这两个类时就要考 ...
 - Android开源框架——Volley
		
Volley 是 Google 在 2013 I/O 大会上推出的 Android 异步网络请求框架和图片加载框架.特别适合数据量小,通信频繁的网络操作.Volley 主要是通过两种 Diapatch ...
 - Android开源框架Volley(Google IO 2013)源代码及内部实现分析
		
1.Volley概述 在项目开发过 程中,博主曾写过大量的访问网络重复代码,特别是ListView adapter很难避免getView()方法不被重复调用,如果ImageView不利用缓存机制,那么 ...
 - 开源框架Volley的使用《二》[NetWorkImageView&&LruCache&ImageLoader]
		
转载本专栏每一篇博客请注明转载出处地址,尊重原创.此博客转载链接地址:小杨的博客 http://blog.csdn.net/qq_32059827/article/details/5278849 ...
 - [Android] 开源框架 Volley 自定义 Request
		
今天在看Volley demo (https://github.com/smanikandan14/Volley-demo), 发现自定义GsonRequest那块代码不全, 在这里贴一个全的. pu ...
 
随机推荐
- iOS - Notification		通知
			
1.Notification 通知中心实际上是在程序内部提供了消息广播的一种机制,它允许我们在低程度耦合的情况下,满足控制器与一个任意的对象进行通信的目的.每一个 iOS 程序(即每一个进程)都有一个 ...
 - fFFmpeg 命令、案例、测试集中营
			
gitbook: https://www.gitbook.com/book/xdsnet/other-doc-cn-ffmpeg/details ffmpeg [全局选项] {[输入文件选项] -i ...
 - [转载] iptables配置实践
			
原文: http://wsgzao.github.io/post/iptables/ iptables配置实践 By wsgzao 发表于 2015-07-24 文章目录 1. 前言 2. 更新历史 ...
 - js模块化编程总结
			
大家都知道,js中的变量(variable)有其作用范围,比如:函数里用var定义的变量在函数外是看不到的,而定义在函数外面的变量(不能有没有var修饰)均是全局变量,在js程序的任何位置都可以访问. ...
 - CentOS下源码安装MySQL
			
一.创建mysql用户与组,相关目录 useradd mysql -s /sbin/nologin mkdir /usr/local/mysql chown -R mysql.mysql mkdir ...
 - winScp 跳板机到服务器
			
http://jingyan.baidu.com/article/454316ab6ffe1af7a7c03a31.html?qq-pf-to=pcqq.group
 - hook_schema 小总结
			
1, primary key 可以带空格 做为下表 但field就不行 2, dev_node 仅为下标 'primary key' => array('nid'), 'foreign k ...
 - De novo 测序基础知识
			
名词解释 De novo:拉丁文,从头开始的意思,de nove测序则是指在不需要任何参考序列的情况下对某一物种进行基因组测序,然后将测得的序列进行拼接.组装,从而绘制该物种的全基因组序列图谱. 重测 ...
 - js中正则表达式 书写方法
			
function test(){ var text="index.aspx?test=1&ww=2&www=3"; var re = ...
 - controller 监控Unix性能信息
			
linux系统需要有RPC(Remote Procedure Call Protocol),远程过程调用协议,通过安装rpc.rstatd程序,启动其服务,就可以给远程机器提供信息,即Lr可以获取到该 ...