android之volley学习
Volley是android的平台通信库,一个新的网络通信框架。Volley 的特点:适合数据量小,通信频繁的网络操作。
获取Volley
git 工具使用:
git clone https://android.googlesource.com/platform/frameworks/volley
下载下来然后到eclipse后生成jar文件,放到libs下面
在已有的project中点击new->new module,然后进去选择页面
在选择页面可以看到,这个更友好的界面,有Library导入,.jar、.AAR等,因为此时我们下载的是Volley.jar,所以选择 .jar
然后选择文件所在文件夹,此时作者放在桌面
接下来因为没有将库引用,所以要配置bulid.gradle,此时选择File->project structure
左侧选择app,然后右侧点击dependency,如图
然后点击右边加号第三个Module dependency,添加刚才导入的Volley.jar
一:volley请求加载图片
本地搭建一个服务器,里面放一张图片,
布局里面放一个普通的ImageView,找到图片
iv = (ImageView) findViewById(R.id.volley_image);
该方法在onCreate里面执行
private void getVolleyImage() {
RequestQueue requestqueue = Volley.newRequestQueue(this);
String iamgeurl = "http://10.0.2.2/images/pic_1.jpg";
final LruCache<String, Bitmap> lurcache = new LruCache<String, Bitmap>();
ImageLoader.ImageCache imagecahe = new ImageLoader.ImageCache() {
@Override
public Bitmap getBitmap(String key) {
return lurcache.get(key);
}
@Override
public void putBitmap(String key, Bitmap value) {
lurcache.put(key, value);
}
};
ImageLoader imageloader = new ImageLoader(requestqueue, imagecahe);
ImageLoader.ImageListener listener = imageloader.getImageListener(iv, R.drawable.p1, R.drawable.p1);
imageloader.get(iamgeurl, listener);
}
二:使用NetworkImageView
<com.android.volley.toolbox.NetworkImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
android:id="@+id/volley_image2" />
然后在onCreate里面执行
private void getNetworkImageView() {
String iamgeurl = "http://10.0.2.2/images/pic_1.jpg";
RequestQueue requestqueue = Volley.newRequestQueue(this);
final LruCache<String, Bitmap> lurcache = new LruCache<String, Bitmap>();
ImageLoader.ImageCache imagecahe = new ImageLoader.ImageCache() {
@Override
public Bitmap getBitmap(String key) {
return lurcache.get(key);
}
@Override
public void putBitmap(String key, Bitmap value) {
lurcache.put(key, value);
}
};
ImageLoader imageloader = new ImageLoader(requestqueue, imagecahe);
iv2.setTag("url");
iv2.setImageUrl(iamgeurl, imageloader);
}
android之volley学习的更多相关文章
- android的volley学习
更简单的一种方式是在build.gradle中引入依赖[推荐这种方式] compile 'com.android.volley:volley:1.1.1' StringRequest的用法接下来我们看 ...
- Android采用Volley具体的例子展示完整的异步加载数据(一)
MainActivity例如下列: package cc.cn; import java.util.HashMap; import org.json.JSONObject; import androi ...
- android NDK 实用学习(五)-c++端调用java接口
1,阅读此文章前请阅读前面文章,以免阅读出现障碍: android NDK 实用学习(一)-获取java端类及其类变量 android NDK 实用学习(二)-java端对象成员赋值和获取对象成员值 ...
- android NDK 实用学习(三)- java端类对象的构造及使用
1,读此文章前我假设你已经读过: android NDK 实用学习-获取java端类及其类变量 android NDK 实用学习-java端对象成员赋值和获取对象成员值 2,java端类对象的构造: ...
- android NDK 实用学习(二)-java端对象成员赋值和获取对象成员值
1,关于java端类及接口定义请参考: android NDK 实用学习-获取java端类及其类变量 2,对传过来的参数进行赋值: 对bool类型成员进行赋值 env->SetBooleanF ...
- Android源码学习之装饰模式应用
首先得了解最基础的装饰器模式 参考 设计模式之八 --- 装饰模式(Decorator) 参考链接:http://blog.csdn.net/cjjky/article/details/7478788 ...
- Android应用开发学习之表格视图
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 本文我们来学习一个使用表格视图的程序,下图是该程序的运行效果: 该程序主Activity文件内容如下: packag ...
- 【转】基于 Android NDK 的学习之旅-----数据传输(引用数据类型)
原文网址:http://www.cnblogs.com/luxiaofeng54/archive/2011/08/20/2147086.html 基于 Android NDK 的学习之旅-----数据 ...
- Android之SurfaceView学习(一)转转
Android之SurfaceView学习(一) 首先我们先来看下官方API对SurfaceView的介绍 SurfaceView的API介绍 Provides a dedicated drawing ...
随机推荐
- Java注解基础概念总结
注解的概念 注解(Annotation),也叫元数据(Metadata),是Java5的新特性,JDK5引入了Metadata很容易的就能够调用Annotations.注解与类.接口.枚举在同一个层次 ...
- android 任意类 获得屏幕大小
方法一 WindowManager managet=(WindowManager) context.getSystemService(Context.WINDOW_SERVICE); Display ...
- ios打包ipa的四种实用方法(.app转.ipa)
总结一下,目前.app包转为.ipa包的方法有以下几种: 1.Apple推荐的方式,即实用xcode的archive功能 Xcode菜单栏->Product->Archive->三选 ...
- javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
SSL握手失败:用JDK1.8做发邮件的功能遇到这种问题处理方式是:将目录 %JAVA_HOME%\...\jre\lib\security里的local_policy.jar,US_export_p ...
- quertz 使用小例
最近工作中用了个任务调度,学的不好,就把它记下来,为了以后参考 一般的 quartz都允许有一个名为quartz.properties的配置文件,通过它可以修改quartz框架运行时的环境: Quar ...
- SimpleXML操控XML
复杂字符串如下: $_xml=<<<_xml <?xml version="1.0" encoding="utf-8"?> < ...
- (3)WebApi客户端调用
1.创建一个应用台控制程序,可以把Model的引用,用下面的方法拖拽上来(解决方案里没有这个文件,只是这个文件的引用) 2.Program.cs using System; using System ...
- 让Git忽略所有obj和bin目录的同步
DotNet的项目里,编译出来的二进制文件默认都是放在每个项目对应的bin和obj目录下,有时候开发人员会不小心把这些目录的文件错误的提交到Git服务器.Git里的忽略文件功能可以通过一个.gitig ...
- NoSql数据库初探-mongoDB读操作
MongoDB以文档的形式来存储数据,此结果类似于JSON键值对.文档类似于编程语言中将键和值关联起来的结构(比如:字典.Map.哈希表.关联数组).MongoDB文档是以BOSN文档的形式存在的.B ...
- jshint 一些选项(转载)
内容来自: http://www.cnblogs.com/qianduanjingying/p/6185793.html 一些变量的作用: http://www.cnblogs.com/CloudMu ...