2013-01-04 43 views
0

我的XML代碼機器人圖像視圖不是按重量

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 

<LinearLayout 
    android:id="@+id/rl_upload_header" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:gravity="center" 
    android:minHeight="50dp" > 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/upload_activity" 
     android:textSize="20sp" 
     android:textStyle="bold" /> 
</LinearLayout> 

<ScrollView 
    android:layout_width="fill_parent" 
    android:layout_height="0dp" 
    android:layout_weight="1" > 

    <LinearLayout 
     android:id="@+id/ll_middle" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:baselineAligned="false" 
     android:gravity="center" 
     android:orientation="horizontal" > 

     <LinearLayout 
      android:id="@+id/ll_img" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="2" 
      android:gravity="center" > 

      <ImageView 
       android:id="@+id/image_view" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:layout_marginLeft="10dp" 
       android:layout_marginRight="10dp" 
       android:background="@drawable/app_icon_17" 
       android:contentDescription="@string/empty" > 
      </ImageView> 
     </LinearLayout> 

     <LinearLayout 
      android:id="@+id/ll_eds" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="5" 
      android:baselineAligned="false" 
      android:gravity="center" 
      android:orientation="vertical" > 

      <EditText 
       android:id="@+id/ed_img_name" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="10dp" 
       android:layout_marginRight="10dp" 
       android:layout_marginTop="20dp" 
       android:background="@drawable/text_box_background" 
       android:hint="@string/name" 
       android:paddingLeft="12dp" /> 

      <EditText 
       android:id="@+id/ed_amount" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="10dp" 
       android:layout_marginRight="10dp" 
       android:layout_marginTop="10dp" 
       android:background="@drawable/text_box_background" 
       android:hint="@string/amount" 
       android:paddingLeft="12dp" /> 

      <EditText 
       android:id="@+id/ed_desc" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_marginBottom="20dp" 
       android:layout_marginLeft="10dp" 
       android:layout_marginRight="10dp" 
       android:layout_marginTop="10dp" 
       android:background="@drawable/text_box_background" 
       android:hint="@string/desc" 
       android:paddingLeft="12dp" /> 
     </LinearLayout> 
    </LinearLayout> 
</ScrollView> 

<LinearLayout 
    android:id="@+id/rl_upload_bottom" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:baselineAligned="false" 
    android:gravity="center" 
    android:minHeight="70dp" 
    android:orientation="horizontal" > 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:baselineAligned="false" 
     android:gravity="center" > 

     <Button 
      android:id="@+id/button_upload" 
      android:layout_width="120dp" 
      android:layout_height="40dp" 
      android:background="@drawable/upload" > 
     </Button> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:baselineAligned="false" 
     android:gravity="center" 
     android:minHeight="50dp" > 

     <Button 
      android:id="@+id/button_cancel" 
      android:layout_width="120dp" 
      android:layout_height="40dp" 
      android:background="@drawable/discard" > 
     </Button> 
    </LinearLayout> 
</LinearLayout> 

提到在此存在的ImageView我想利用僅有25%左右的空間(ID = image_view)(寬度)的屏幕和剩餘寬度應該由包含編輯文本(id = ll_eds)的佈局進行。

但是,當圖像的寬度很大時,其佔用屏幕的寬度將近90%。

那麼我在做什麼錯?

大約在View使用layout_weight時,我想這種設計

enter image description here

+1

爲保存Imageview的LinearLayout設置layout_width = 0dp。 –

回答

1

如果尺寸看起來逆轉,嘗試切換圖像的權重和其他佈局。有時Android的權重系統可以輕鬆地將人們關閉

如果@ drawable/app_icon_17是永久性圖像,它不會改變,您可以嘗試使用RelativeLayout。您可以將圖像定位在屏幕的左側,然後將其他ViewGroup放置在屏幕的右側。

+1

順便說一句,沒有不固定的圖像,好的建議,謝謝 –