位置: 编程技术 - 正文

Android 获取并显示远程图片 Picasso框架的使用(一)(android获取手机的基本信息)

编辑:rootadmin

推荐整理分享Android 获取并显示远程图片 Picasso框架的使用(一)(android获取手机的基本信息),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android获取屏幕显示内容,android获取手机的基本信息,安卓获取当前view,android获取屏幕显示内容,android 获取application,android获取sha1,android获取当前context,android获取sha1,内容如对您有帮助,希望把文章链接给更多的朋友!

转载请注明出处:明桑Android

在Android开发中,常需要从远程获取图片并显示在客户端,当然我们可以使用原生HttpUrlConnection和AsyncTask等操作来完成,但并不推荐,因为这样不仅需要我们编写大量的代码,还需要处理缓存和下载管理等,最好自己封装成库或者采用第三方库;

Picasso:A Powerful Image Downloading and Caching Library for Android

根据名字就知道它是跟什么相关了(Picasso:毕加索)它的基本操作非常简单喔

文章主要介绍如何通过基本的HttpUrlConnection和AcyncTask实现获取远程图片;以及如何使用Picasso框架来实现,最后作为练习实现一个小Demo,希望对正在学习Android网络操作的同学有所帮助;

1,使用HttpUrlConnection和AsyncTask实现远程图片下载

使用HttpUrlConnection和AsyncTask获取远程图片,需要以下几步:

建立HttpURLConnection:首先需要和远程图片url建立一个连接:从connection中获取输入流:使用BitmapFactory.decodeStream(in)将输入流编码成Bitmap:imageView.setBitmap(bitmap),将bitmap对象添加至ImageView中:

我们知道在主线程中是无法执行以上网络操作的,所以需要AsyncTask,将耗时操作运行在后台线程中,对于HttpUrlConnection和AsyncTask具体操作不熟悉的可以看看我写的上一篇文章:Android网络编程 HttpUrlConnection HttpClient AsyncTask;

以下是使用上述代码完成图片下载的示例:

2,Picasso框架什么是Picasso:

强大的图片下载和缓存的第三方库;我觉得这就是对它最准确的描述了,至于其他特性,可以参见官网介绍:Picasso

如何使用Picasso

跟所有第三方库的使用一样,我们需要将其添加进我们的项目:可以直接下载最新.jar包 picasso-2.5.2.jar,也可以从github中将其clone到本地:picasso

如果是直接下载的.jar包,将其添加至项目libs文件夹下,并右键jar包,选择将其Add As Library:如果是clone的项目,你还是需要将其编译成jar包,然后根据第1步操作添加进项目:以下是编译过程: 首先进入你clone的Picasso目录下,然后在命令行执行如下命令

android update project -p

ant jar

2.Picasso的基本用法: 将Picasso添加进项目后,要使用它非常简单,只需要一行代码就能搞定:

短短的一行代码为我们解决了很多问题:

自动将图像缓存在本地通过图片压缩转换以减少内存消耗自动处理了ImageView的回收,即自动取消不在视野范围内的ImageView视图资源的加载;Android 获取并显示远程图片 Picasso框架的使用(一)(android获取手机的基本信息)

3.适配器:适配器自动发现和重用以前取消的下载:

4.图像格式转换:很多时候需要将图片进行格式转换或者剪裁以节省内存或者达到我们的布局效果:

剪裁大小:

自定义格式转换:为了实现更多你想要图片转换的效果,你可以自己实现一个实现了Transformation接口的类,然后将其对象传递给transform()方法:

5.占位符图片:所谓的占位符图像即当图片未正常显示时默认的图片,通过placeholder()设置,Picasso也支持设置图片显示错误时显示的默认图片,通过error()设置:

6.载入本地资源:除了通过网络下载图片,Picasso也可以载入本地图片资源:

7.调试:为了方便调试,你可以通过调用Picasso的setIndicatiorEnabled(true);可以让不同来源的图片显示一个不同的色彩标记;

以上的内容已经够多了,限于篇幅就把Picasso的练习Demo放到下篇文章吧!

总结:

是不是觉得Picasso的使用很简单了,如果应用中需要获取和显示大量的图片数据,何不考虑使用Picasso一下呢。来做个Demo感受下:Android 获取并显示远程图片 Picasso框架的使用(二)

参考资料:

Picasso官网

Sending and Managing Network Requests

微博: @明桑Android黑历史邮箱: <@.com>个人主页: 明桑战胜Android汪的黑历史

微信公众号: ITBird

android开发—开发环境的搭建 1.下载androidstudio编辑器打开

Android 获取并显示远程图片 Picasso框架的使用(二) 转载请注明出处:明桑Android在上篇文章中介绍了Picasso的基本用法,这篇文章作为以上的练习;本文代码github地址:UsePicasso实现效果:(动图请耐心加

ScrollView嵌套ListView的解决方案 在开发的过程当中,由于手机屏幕的大小的限制,我们经常需要使用滑动的方式,来显示更多的内容。在最近的工作中,遇见一个需求,需要将ListView嵌

标签: android获取手机的基本信息

本文链接地址:https://www.jiuchutong.com/biancheng/385258.html 转载请保留说明!

上一篇:Android开发-再按一次退出程序 连续按两次退出程序(android开发模式)

下一篇:android开发—01开发环境的搭建

  • 进项税抵扣怎么弄
  • 购物税费怎么算
  • 金蝶迷你版怎么打印凭证
  • 租车属于经营租赁吗
  • 转出未交增值税年末怎么转平
  • 没有认证怎么办
  • 企业预缴的增值税收入算不算企业的销售收入
  • 开票时显示没有原票抄报信息
  • 小微企业增值税优惠政策最新2023
  • 企业搬迁到外省之前的债务怎么处理
  • 票据到期兑付会怎么样
  • 应收账款融资的优缺点
  • 一般纳税人制作除尘器的制作费开票税率是多少
  • 少记财务费用如何记账
  • 代收代付如何进行账务处理?
  • 免税申请怎么办理
  • 从事非学历教育的学校提供的教育服务免征增值税吗
  • 公司店铺刷单的收入怎么记账
  • 售后维修服务会计入账方式
  • 金融性负债总额是什么
  • 提高并购成本
  • 收到外单位奖励怎么回复
  • 科目编码首位与分类编号不符,接受此编码吗
  • 利用退休人员避孕措施
  • 开电脑店几年搞活动好吗
  • 华为授权查询系统
  • window10 锁屏壁纸
  • 盈利 利润
  • 识别税收风险点是什么
  • 对外投资损失是负债吗
  • vuewatch监听对象及对应值的变化
  • 融资租赁业务增资扩股
  • 企业会计准则应用指南2023pdf
  • python如何导入excel
  • 宝塔运行go
  • 网络销售平台优势和劣势
  • 企业接受的非货币性投资按照 计入实收资本
  • 发生售后维修领用材料分录
  • 企业的净资产包括固定资产吗
  • 工程项目成本管理实论
  • 不抵扣的进项税为什么要交税
  • 公对私转账有什么风险
  • 第三方平台佣金账务处理
  • 增值税 附加税费
  • 小微企业记账必须有会计证吗
  • 资本成本率是指企业用资费用与有效筹资额之间的比率
  • 客户重复付款了怎么礼貌回复
  • 发票备注栏填写内容
  • mysql索引类型及原理
  • 被放弃的遗产
  • win10系统即将过期怎么办
  • FreeBSD中使用QUOTA(磁盘配额)来限制用户空间
  • 电脑没有系统了如何重装系统
  • windows server 2016正式版下载激活安装设置教程
  • mac键盘进水后会报废吗
  • Win10怎么修改hosts文件
  • 电脑win7一开机就弹出各种广告窗口怎么办
  • win10开始菜单在哪
  • winxp鼠标右键菜单栏怎么改
  • win7系统突然打印不了
  • 关闭windows输入法
  • win8磁盘分区
  • 电脑预装软件是什么意思
  • es6字符串模版
  • jquery 刷新div
  • 简单 粗暴
  • ipa文件分享
  • linux修改目录路径
  • 批处理修改文件后缀名
  • python 条件变量
  • validateform
  • android基础入门教程
  • unity获取鼠标点击的位置
  • js的调试
  • python 命令
  • unitymol
  • 利用html css javascript做一个网页
  • python有没有二维数组
  • 发票系统怎么设置打印
  • 日本海关关税税率表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设