ImageView宽度= 0.75x屏幕宽度和高度= 1.5 x新的ImageView宽度XML
问题描述:
我正在使用Glide将图像加载到ImageView中。ImageView宽度= 0.75x屏幕宽度和高度= 1.5 x新的ImageView宽度XML
在从互联网加载图像之前,我将添加一个占位符图像,直到图像加载完成。
即我加载幸好具有固定宽比,即高度/宽度的图像= 1.5
我有以下要求: 图像视图的宽度应该占据屏幕宽度的75%的。 高度应精确1.5倍新的屏幕宽度, 即
width = 0.75 * screenWidth;
height = 1.5 * width;
Curretly我这样
mImageViewPic = (ImageView) view.findViewById(R.id.networkImageView);
mImageViewPic.requestLayout();
// 75% width of the screen taken by the image
mImageViewPic.getLayoutParams().width = (int) (getContext().getResources()
.getDisplayMetrics().widthPixels * 0.75);
// height = 1.5 * width
mImageViewPic.getLayoutParams().height = (int) (mImageViewPic
.getLayoutParams().width * 1.5);
我在寻找什么是实现这一编程通过XML而非编程方式来高效地解决这些需求。
我知道你可以使用布局权重设置宽度为75%,但是如何在此之后设置高度?
我希望我的要求很明确。提前致谢。
答
可以使用PercentRelativeLayout。例如,如果您需要16:9宽高比,您应该在PercentRelativeLayout中添加如下内容:
android:layout_width="300dp"
app:layout_aspectRatio="178%"
答
您可以使用倍率(W,H)方法滑翔调整大小