Picasso是Square公司开源的一个Android图形缓存库,它可以实现图片下载和缓存功能。
下载地址如下:
http://square.github.io/picasso/
最基本的用法:
Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
Picasso不仅实现了图片异步加载的功能,还解决了android中加载图片时需要解决的一些常见问题:
1.在adapter中需要取消已经不在视野范围的ImageView图片资源的加载,否则会导致图片错位,Picasso已经解决了这个问题;
2.使用复杂的图片压缩转换来尽可能的减少内存消耗;
3.自带内存和硬盘二级缓存功能;
4.图形转换操作,如变换大小,旋转等,提供了接口来让用户可以自定义转换操作;
5.加载载网络或本地资源。
Adapter的重用会被自动检测到,Picasso会取消上次的加载
@Override public void getView(int position, View convertView, ViewGroup parent) {
SquaredImageView view = (SquaredImageView) convertView;
if (view == null) {
view = new SquaredImageView(context);
}
String url = getItem(position);
Picasso.with(context).load(url).into(view);
}
图片转换:转换图片以适应布局大小并减少内存占用
Picasso.with(context)
.load(url)//加载URL
.resize(48, 48)//裁剪后的宽、高大小
.centerCrop()//中心裁剪
.into(imageView);//插入到imageview
Place holders-空白或者错误占位图片:
picasso提供了两种占位图片,未加载完成或者加载发生错误的时需要一张图片作为提示,如果加载发生错误会重复三次请求,三次都失败才会显示erro Place holder 。
Picasso.with(context)
.load(url)//加载URL
.placeholder(R.drawable.user_placeholder)//空白是插入的图片资源
.error(R.drawable.user_placeholder_error)//加载错误插入的图片资源
.into(imageView);//插入到imageview
资源文件的加载:
除了加载网络图片,picasso还支持加载Resources, assets, files, content providers中的资源文件,可以在打".load"时IDE提示中查看。
Picasso.with(context).load(R.drawable.landing_screen).into(imageView1);
Picasso.with(context).load(new File(...)).into(imageView2);
分享到:
相关推荐
最新毕加索框架picasso-2.71828-sources.jar
很好用的第三方框架,对于加载缓存图片有超常作用
Picasso是58同城推出的一款sketch设计稿智能解析工具,可将sketch设计稿自动解析成还原精准,可用度高的前端代码。 Picasso A tool automatically convert sketch...安装完成后在sketch软件中看到该插件,如下图所示:
毕加索强大的Android图片下载和缓存库 有关更多信息,请下载从下载最新的AAR或通过Gradle获取: implementation ' com.squareup.picasso:picasso:2.71828 ' 或Maven: < dependency> < groupId>com.squareup.picasso...
在 Android 开发中,图片加载库 Picasso 是一个常用且强大的工具,它简化了图片的加载、缓存和显示。然而,即使如此优秀的库也可能存在一些潜在的问题,其中之一便是“毕加索泄漏”(PicassoLeak)。本文将深入探讨 ...
在Android开发中,图片加载与管理是一个常见的需求,而Picasso库就是一款强大的图片处理工具,它由Square公司开发,为开发者提供了简单易用的API来加载、缓存和显示网络上的图片。本文将深入解析Picasso库的工作机制...
3. **PicassoPalette的整合**:PicassoPalette项目将Palette的功能集成到Picasso中,使得开发者在使用Picasso加载图片的同时,就能轻松获取到图像的调色板。这极大地方便了开发者在加载图片后,可以根据提取的颜色来...
一个示例项目,展示了如何使用 Picasso Android 库下载和显示用作 Base64 字符串的图像。 整个想法是基于使用自定义毕加索实例和自定义下载实现。 笔记 Anroid 应用程序未实现任何缓存机制(内存或磁盘),因此...
毕加索一个强大的安卓图片下载和缓存库 欲了解更多信息,请参阅下载下载或通过 Gradle 抓取: compile ' com.squareup.picasso:picasso:2.3.4 ' 或 Maven: < dependency> < groupId>com.squareup.picasso</ groupId...
毕加索强大的Android图片下载和缓存库 欲了解更多信息,请下载下载或通过Gradle获取: compile ' com.squareup.picasso:picasso:2.5.2 ' 或Maven: < dependency> < groupId>com.squareup.picasso</ groupId> ...
它利用了Picasso图像库,该库提供了一种非常有效且快速的方式来在Material Design Recyclerview Gridlayout和相应的ViewPager / Fragment幻灯片放映中显示图像。 有关配置设置,请参见PicassoCache类。 可以为...
光刻-毕加索光刻毕加索是与光刻兼容的库,它提供了与毕加索兼容的图像组件。 Litho-PicassoX支持Picasso的大部分功能,并且与Android X兼容。如果您注意Litho-Picasso Litho Picasso是Litho兼容的库,它提供与...
生成第一个字母的头像图片,例如gmail的联系人头像。 它生成一个可设置为ImageView的可绘制对象。 安装 将以下内容添加到您的gradle文件中。 implementation ' ...
Picasso允许在您的应用程序中轻松加载图像-通常只需一行代码! 毕加索会自动处理Android上许多常见的图像加载陷阱:处理ImageView回收和适配器中的下载取消。 复杂的图像转换,使用最少的内存。 自动内存和磁盘缓存...
演示版原始图片转变如何使用?步骤1Gradlerepositories { jcenter()}dependencies { compile ' jp.wasabeef:picasso-transformations:2.x.x ' // If you want to use the GPU Filters compile ' jp.co.cyberagent....
一般来说,异步任务的代码会包含在具体的类或接口中,而毕加索的使用则体现在图片加载的相关逻辑部分,如Adapter的getView方法或者单独的图片加载工具类中。 总结起来,"ProductListings"项目展示了如何利用Java...
这个项目的名字可能寓含了对著名艺术家毕加索的致敬,因为CNN在处理图像时,就像艺术家解析视觉元素一样,揭示出图像中的隐藏特征。 CNN是一种在计算机视觉领域广泛应用的神经网络架构,特别适合处理图像数据。其...
Picasso Transformations一个Android转换库,为Picasso提供了各种图像转换。 请随时使用此功能。 您是否正在使用Glide或Fresco? 滑行转换Fresco进行Picasso转换Android转换库为Picasso提供了各种图像转换。 请随时...
Picasso是由Square公司开发的一个强大的图片加载库。它使得图片的加载、缓存和显示变得非常简单。主要功能包括: - 自动处理网络请求和缓存策略,避免不必要的网络请求。 - 支持图片的缩放和裁剪,避免因图片过大...
1. **异步加载**:毕加索能够自动在后台线程中下载图片,避免阻塞UI,提升用户体验。 2. **内存缓存**:自动管理内存缓存,当图片需要再次显示时,可以直接从内存中获取,提高了加载速度。 3. **磁盘缓存**:如果...