我检查过的朋友get drawable exactly the size of the imageView to use as a placeholder
但它没有帮助我
我的问题是我想要显示完全符合图像尺寸的占位符
图像大小是动态的,我从服务器获取图像高度和宽度,使用我计算调整后的宽度和高度
例如,在一行列表中,我必须显示400 * 300大小的图像,而在另一行中,我必须显示700 * 500大小的图像
现在我希望占位符在第一种情况下填充区域400 * 300,在第二种情况下填充700 * 500,这是我无法实现的,
我怎样才能做到这一点?
mDisplayImageOptions = new DisplayImageOptions.Builder()
.resetViewBeforeLoading(true)
.imageScaleType(ImageScaleType.EXACTLY)
.showImageOnLoading(R.drawable.test_user)
.cacheInMemory(true)
.cacheOnDisk(true)
.build();
mAdjustedWidth = mWindowWidth - 10;
mAdjustedHeight = 400;
try {
int width = cursor.getInt(cursor.getColumnIndexOrThrow(TalkTable.TALK_TWIDTH));
if(width > 0) {
mAdjustedHeight = (mAdjustedWidth * cursor.getInt(cursor.getColumnIndexOrThrow(TalkTable.TALK_THEIGHT))) / width;
}
}catch (Exception ex){
ex.printStackTrace();
}
talkImageView.getLayoutParams().height = mAdjustedHeight;
talkImageView.getLayoutParams().width = mAdjustedWidth;
talkImageView.requestLayout();
mImageLoader.displayImage(talkImageThumbnil,talkImageView,mTalksDisplayImageOptions,new SimpleImageLoadingListener(){
@Override
public void onLoadingStarted(String imageUri, View view) {
// ProgressBar progressBar1 = (ProgressBar)progressBar.getTag();
//progressBar1.setVisibility(View.VISIBLE);
talkImageView.getLayoutParams().height = mAdjustedHeight;
talkImageView.getLayoutParams().width = mAdjustedWidth;
talkImageView.requestLayout();
talkImageView.setImageResource(R.drawable.image_place_holder);
Log.d(TAG, " Progress bar visisble ");
}
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
//ProgressBar progressBar1 = (ProgressBar)progressBar.getTag();
//progressBar1.setVisibility(View.GONE);
}
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
//ProgressBar progressBar1 = (ProgressBar)progressBar.getTag();
//progressBar1.setVisibility(View.GONE);
}
@Override
public void onLoadingCancelled(String imageUri, View view) {
//ProgressBar progressBar1 = (ProgressBar)progressBar.getTag();
//progressBar1.setVisibility(View.GONE);
}
});
XML图像视图
我几天都在为此奋斗,请帮帮我
在图像下载之前,占位符看起来像这样
图像下载后,它看起来像下面的图像
我希望占位符应该填充将要显示的图像的确切高度和宽度
答案 0 :(得分:0)
将ImageView的比例类型设置为fitCenter?