2017-03-23 61 views
1

我在Android Studio中設置imageView的高度有一個問題。我使用Glide從MySQL中獲取圖像。
當我使用高度「wrap_content」時,沒有圖像值的行可以很好地工作,但圖像值的行工作不好,因爲圖像幾乎填滿了所有的屏幕。當我使用靜態值(200dp)設置高度時,對於具有空值的行非常不利。 我使用下面的代碼,但它不能解決我的問題。使用來自MySQL的數據以編程方式設置ImageView的高度

if (image.equals("")){ 
     int dimensionInDp = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 0, getResources().getDisplayMetrics()); 
     postImage.getLayoutParams().height = dimensionInDp; 
     postImage.requestLayout(); } else { 
     int dimensionInDps = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 200, getResources().getDisplayMetrics()); 
     postImage.getLayoutParams().height = dimensionInDps; 
     postImage.requestLayout();} 

代碼的結果是所有的imageview設置高度爲200dp。

回答

0

我想你需要使用ImageView.setScaleType()並在wrap_content中保留ImageView的寬度和高度。這將使圖像自動適合ImageView(FIT_CENTER)或被裁剪(CENTER_CROP)

0

嘗試在xml文件的imageView中指定minHeight。 是這樣的:

<ImageView 
    android:id="@+id/imageView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:scaleType="fitXY" 
    android:minHeight="200dp" 
    android:src="@drawable/imageView"/> 
相關問題