2016-12-06 70 views
2

我試圖在RelativeLayout中顯示兩個ImageView verticaly,每個imageView具有50%的權重,但只顯示一個ImageView的顯示。爲什麼layout_weight在RelativeLayout內不能正常工作?

代碼:

<RelativeLayout 
    android:id="@+id/layout_board" 
    android:layout_width="match_parent" 
    android:layout_height="450dp" 
    android:background="@color/colorPrimaryDark" 
    android:weightSum="2"> 

<ImageView android:id="@+id/imageView11" 
      android:layout_width="wrap_content" 
      android:layout_height="0dp" 
      android:layout_weight="1" 
      android:background="@color/colorAccent" 
      android:adjustViewBounds="true" 
      android:scaleType="fitXY"/> 

<ImageView android:id="@+id/imageView21" 
      android:layout_width="wrap_content" 
      android:layout_height="0dp" 
      android:layout_weight="1" 
      android:background="@color/colorAccent" 
      android:adjustViewBounds="true" 
      android:scaleType="fitXY"/> 



</RelativeLayout> 

請幫幫忙!

+5

'layout_weight'僅適用於'LinearLayout'。 –

回答

0

簡單地說,你的根RelativeLayout更改爲LinearLayout解決您的問題,並在你的代碼中使用layout_weight屬性您已經使用的LinearLayout,而不是使用RelativeLayout的作爲的ViewGroup的。 RelativeLayout中沒有layout_weight屬性

1

android:layout_weight不是RelativeLayout的屬性它是屬性LinearLayout。所以,你可以在父佈局更改爲LinearLayout也可以使用PercentRelativeLayout

代碼片段

<android.support.percent.PercentRelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
    <ImageView 
     app:layout_widthPercent="50%" 
     app:layout_heightPercent="50%" 
     app:layout_marginTopPercent="25%" 
     app:layout_marginLeftPercent="25%"/> 
</android.support.percent.PercentRelativeLayout> 
0

添加的LinearLayout下面RelativeLayout的。 weightSum是LinearLayout的屬性。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/activity_main" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 


     <LinearLayout 
      android:id="@+id/layout_board" 
      android:layout_width="match_parent" 
      android:layout_height="450dp" 
      android:orientation="horizontal" 
      android:background="@color/colorPrimaryDark" 
      android:weightSum="2"> 

      <ImageView 
       android:id="@+id/imageView11" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:adjustViewBounds="true" 
       android:background="@color/colorAccent" 
       android:scaleType="fitXY" /> 

      <ImageView 
       android:id="@+id/imageView21" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:adjustViewBounds="true" 
       android:background="@color/colorAccent" 
       android:scaleType="fitXY" /> 
     </LinearLayout> 
    </RelativeLayout>