iOS开发 ImageView网络请求得到的图片不变形处理
来源:互联网 发布:fc2最新网域名 编辑:程序博客网 时间:2024/05/13 03:50
我们在做ImageView网络请求得到的图片不变形处理的时候会通过网络得到的图片来等比例缩放处理。
图片的加载都是使用SDWebimage在加载的
这里以宽度为固定的情况下,图片需等比例缩放,自适应高度,如:
计算缩放比例: CGFloat scale = cell.imageView.contentImage.width / imageView的宽度
计算imageview的高度:imageview的高度 = cell.imageView.contentImage.height * scale;
如上情况在网速慢的情况会崩溃,原因:
因为SDWebimage加载图片是在子线程中做的处理,而计算缩放是在主线程中,在图片未加载成功时,控制台打印的scale是NaN,说明scale是不存在的,当然程序在这里就会崩溃。
解决方案:
1、可以通过线程的依赖来解决(繁琐)
建议方案:直接在使用SDWebimage加载图片的时候添加一个占位图就可以了。
解释:因为在图片未加载成功时候,ImageView的图片内容是这个占位图,当然scale也就不会NaN了。也就不存在崩溃的情况了。
0 0
- iOS开发 ImageView网络请求得到的图片不变形处理
- iOS开发 ImageView网络请求得到的图片设置UIImageView不变形处理
- Imageview 加载网络图片 图片动态处理 图片不变形的方法
- iOS之imageView的图片不变形,居中
- ImageView图片不变形
- iOS开发 UIimage旋转,得到旋转后的Image图片,解决imageView旋转,内部图片不跟着旋转问题
- iOS图片实现可拉伸不变形的处理操作
- ImageView显示图片不变形
- iOS 实现gif 图片效果 以及 图片不变形处理
- 自定义ImageView使图片不变形
- 自定义ImageView处理图片拉伸变形Bug
- iOS UIImage UIImageView 展示图片 不变形 处理
- IOS开发-09.图片拉伸不变形
- iOS 图片拉伸不变形
- iOS 图片不变形拉伸
- Imageview之图片填充模式(图片不变形)
- Android图片变形,ImageView属性的设置。
- ImageView图片变形
- Mysql启动失败
- Firefox下AutoProxy未被验证的解决办法
- MongoDB学习笔记(1)
- mysql中int(1)和int(11)区别
- ckeditor 获取hiddenfield 隐藏域的dom对象
- iOS开发 ImageView网络请求得到的图片不变形处理
- Android OpenGL ES 开发教程(三)
- Android一键加群实现
- nyoj-488素数环
- c# - Entity Framework: Incorrect syntax near ‘OFFSET’
- mycat 的使用
- C++中Deleted 函数
- Calendar:它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段
- linux自动备份oracle数据库并上传到备份服务器 脚本实现