2013-03-26 52 views
1

我試圖在GridView中顯示圖像列表,並且我只想裁剪此列表中圖像的中心。所以,下面是每個圖像項的佈局:(Android - xml)Gridview和ImageView縮放類型centerCrop

<?xml version="1.0" encoding="utf-8"?> 
<ImageView xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/place_image" 
     android:src="@drawable/ic_res" 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:scaleType="centerCrop"/> 

,這裏是包含網格視圖佈局:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 
    <LinearLayout android:id="@+id/upload_view" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:orientation="vertical" 
        android:background="#f6f6f6" 
        android:padding="10dp" 
        android:visibility="gone"> 
     <LinearLayout android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:orientation="horizontal"> 
      <ImageButton android:id="@+id/photo_select" 
        android:layout_width="50dp" 
        android:layout_height="40dp" 
        android:scaleType="fitXY" 
        android:src="@drawable/ic_photo"/> 
      <EditText android:id="@+id/photo_caption" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:hint="@string/caption" 
         android:inputType="textMultiLine"/> 
     </LinearLayout> 
     <TextView android:id="@+id/photo_path" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="" /> 

     <Button android:id="@+id/photo_upload" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/upload_photo" 
       android:textStyle="bold" 
       android:textColor="#ffffff" 
       android:layout_gravity="right"/> 
    </LinearLayout> 
    <TextView android:id="@+id/no_photos" 
       android:layout_height="wrap_content" 
       android:layout_width="match_parent" 
       android:gravity="center" 
       android:textStyle="bold" 
       android:textSize="20dp" 
       android:text="@string/no_photos" 
       android:visibility="gone" /> 
    <GridView android:id="@+id/grid_photos" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_margin="20dp" 
      android:columnWidth="120dp" 
      android:numColumns="auto_fit" 
      android:verticalSpacing="10dp" 
      android:horizontalSpacing="10dp" 
      android:stretchMode="columnWidth" 
      android:gravity="center" /> 
</LinearLayout> 

,這裏是我得到的結果是:

enter image description here

這很奇怪,因爲圖像都是以一種奇怪的方式剪裁的。下面是我原來的圖像之一:

enter image description here

我從來沒有遇到這樣的問題,所以如果任何你熟悉這個,請幫我找到這個原因。謝謝! P:我想這隻能是xml佈局的問題,所以我不認爲有必要在這裏包含我的android源代碼。但如果確實如此,請告訴我問題可能來自哪裏,我將使用我的代碼編輯此問題。

+0

將您的ImageView添加到相對佈局中,並查看它是如何來的 – Triode 2013-03-26 13:53:01

+0

嘿它現在可行!謝謝! – 2013-03-26 13:59:52

回答

3

原因是GridView清除所有的瓷磚設置佈局PARAMS並設置自己的佈局PARAMS所以最好你把你的ImageViewRelativeLayout。這與所有AdapterView一樣,如ListView,Gallery等。