android 第一次进入聊天界面,图片加载

蒲锦_up 2018-05-03 05:35:59
/**
* load image into image view
*
*/
private void showImageView(final String thumbernailPath, final String localFullSizePath,final EMMessage message) {
// first check if the thumbnail image already loaded into cache s
Bitmap bitmap = EaseImageCache.getInstance().get(thumbernailPath);

if (bitmap != null) {
// thumbnail image is already loaded, reuse the drawable
imageView.setImageBitmap(bitmap);
} else {
imageView.setImageResource(R.drawable.ease_default_image);
AsyncTaskCompat.executeParallel( new AsyncTask<Object, Void, Bitmap>() {

@Override
protected Bitmap doInBackground(Object... args) {
File file = new File(thumbernailPath);
if (file.exists()) {
return EaseImageUtils.decodeScaleImage(thumbernailPath, 160, 160);
} else if (new File(imgBody.thumbnailLocalPath()).exists()) {
return EaseImageUtils.decodeScaleImage(imgBody.thumbnailLocalPath(), 160, 160);
}
else {
if (message.direct() == EMMessage.Direct.SEND) {
if (localFullSizePath != null && new File(localFullSizePath).exists()) {
return EaseImageUtils.decodeScaleImage(localFullSizePath, 160, 160);
} else {
return null;
}
} else {
return null;
}
}
}

protected void onPostExecute(Bitmap image) {
if (image != null) {
imageView.setImageBitmap(image);
EaseImageCache.getInstance().put(thumbernailPath, image);
}
}
});
}
}


现在遇到个问题,就是在刷新加载(比如第一进入聊天页面或者下拉刷新)的时候,加载图片消息,会因为图片大小不规则,造成显示图片item的时候因为图片组件的重新绘制计算宽高而上下跳动。

环信是用listview+baseadapter,这个问题也没有。应该是根据图片的尺寸动态计算显示大小,但是我在环信的代码没看见这方面的代码。


我使用的是recyclerview,现在就是遇到这个问题,导致了后面几个问题。
1.下拉刷新定位到某个posoiton的时候,不准确。
2. 第一次进入聊天界面,显示图片不能滑动到底部,图片会上下跳动
3.scrolltopostion()方法也不灵了,不能定位位置上。

哪位知道的大神知道的,指点下嘛,谢谢!

...全文
471 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
蒲锦_up 2018-05-04
  • 打赏
  • 举报
回复
引用 2 楼 moonFY 的回复:
要么就这样,因为图片大小不一,肯定会有重新绘制,要么固定高度,做个图片的放大功能就可以了。
参考了网易的demo,图片是动态计算大小,还是比较不错的。
moonFY 2018-05-04
  • 打赏
  • 举报
回复
要么就这样,因为图片大小不一,肯定会有重新绘制,要么固定高度,做个图片的放大功能就可以了。
蒲锦_up 2018-05-03
  • 打赏
  • 举报
回复
环信的demo 有问题,唉

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧