2016-11-12 248 views
0

我正在使用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%,但是如何在此之後設置高度?

我希望我的要求很明確。提前致謝。

回答

0

可以使用PercentRelativeLayout。例如,如果您需要16:9寬高比,您應該在PercentRelativeLayout中添加如下內容:

android:layout_width="300dp" 
app:layout_aspectRatio="178%" 
0

您可以使用倍率(W,H)方法滑翔調整大小