2015-10-02 34 views
0

我有一個固定寬度的水平線性佈局。該視圖在運行時可以有2到6個圖標。我希望這些圖標之間的距離相等,但它們應占用完整的版面寬度。 例如: 如果寬度的LinearLayout = 100dp和圖標= 4 I LL能在這些4個圖標之間3條線,在等於distance.Each線寬分離將是(100 - 4 *(圖標寬度))/ 3android加載圖標等距線分隔

我已經根據我得到的數據製作了6個圖像瀏覽和5個線視圖,我試圖在運行時隱藏/公開。 我已經成功地在運行時顯示正確的,但我無法相應地設置分隔線的寬度。

這是我在的LinearLayout

<LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"> 



     <ImageView 
      android:id="@+id/iv_itinerary_mode_0" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:scaleType="fitCenter" 
      android:visibility="gone" /> 

     <View 
      android:id="@+id/iv_itinerary_next_0" 
      android:layout_width="match_parent" 
      android:layout_height="1dp" 
      android:background="@color/lightgrey" 
      android:layout_gravity="center_vertical" 
      android:visibility="gone" /> 

     <ImageView 
      android:id="@+id/iv_itinerary_mode_1" 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:scaleType="fitCenter" 
      android:visibility="gone" /> 

      <View 
       android:id="@+id/iv_itinerary_next_1" 
       android:layout_width="match_parent" 
       android:layout_height="1dp" 
       android:background="@color/lightgrey" 
       android:layout_gravity="center_vertical" 
       android:visibility="gone" /> 

      <ImageView 
      android:id="@+id/iv_itinerary_mode_2" 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:scaleType="fitCenter" 
      android:visibility="gone" /> 

      <View 
       android:id="@+id/iv_itinerary_next_2" 
       android:layout_width="match_parent" 
       android:layout_height="1dp" 
       android:background="@color/lightgrey" 
       android:layout_gravity="center_vertical" 
       android:visibility="gone" /> 

      <ImageView 
      android:id="@+id/iv_itinerary_mode_3" 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:scaleType="fitCenter" 
      android:visibility="gone" /> 

      <View 
       android:id="@+id/iv_itinerary_next_3" 
       android:layout_width="match_parent" 
       android:layout_height="1dp" 
       android:background="@color/lightgrey" 
       android:layout_gravity="center_vertical" 
       android:visibility="gone" /> 

      <ImageView 
      android:id="@+id/iv_itinerary_mode_4" 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:scaleType="fitCenter" 
      android:visibility="gone" /> 

      <View 
       android:id="@+id/iv_itinerary_next_4" 
       android:layout_width="match_parent" 
       android:layout_height="1dp" 
       android:background="@color/lightgrey" 
       android:layout_gravity="center_vertical" 
       android:visibility="gone" /> 

      <ImageView 
      android:id="@+id/iv_itinerary_mode_5" 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:scaleType="fitCenter" 
      android:visibility="gone" /> 

      <View 
       android:id="@+id/iv_itinerary_next_5" 
       android:layout_width="match_parent" 
       android:layout_height="1dp" 
       android:background="@color/lightgrey" 
       android:layout_gravity="center_vertical" 
       android:visibility="gone" /> 

      <ImageView 
      android:id="@+id/iv_itinerary_mode_6" 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:scaleType="fitCenter" 
      android:visibility="gone" /> 

     </LinearLayout> 

請建議如何設置這種佈局使得線和圖標設置哪些可見設定在同一時間對自己的等距離佔據的寬度。

如圖片:

enter image description here

+1

嘗試'weightsum' – Mohit

+2

你應該在運行時創建的佈局,而不是隱藏未使用的意見,在一次代碼,你可以設置正確的寬度爲每個視圖,或者,你可以使用權由@Mohit如指出。 – Nanoc

+0

@Mohit你能建議如何使用權重? – gandharv09

回答

1

正如莫希特建議我解決它通過賦予權重給每個行100和每個ImageView的權重爲1。雖然這並不與它曾爲weightsum概念去我。