2016-10-20 54 views
0

我有LinearLayout有子視圖。由於父佈局的方向是垂直的,所以子視圖堆疊在另一個的頂部。所有的孩子都有自己的高度和寬度wrap_content,所以他們可以在父佈局的任何地方自由移動。用戶可以根據需要移動視圖並將其刪除。當用戶移除視圖時,父級佈局高度將調整大小。到目前爲止我的代碼運行良好。如何根據子視圖的位置調整佈局高度

但是,當用戶將一個視圖移到另一個視圖的旁邊時,我希望父佈局調整其高度,就像用戶移除視圖一樣。我嘗試獲取父級的高度,並減去孩子移動的距離並重新繪製佈局,但這不起作用。我也試過其他方法,但我還沒有成功。有人能幫我嗎?

回答

1

您可以使用GridView控件爲你的情況,在這裏你可以設置列(android:numColumns)至1的數,當垂直對齊,並移至一側時使其2.

這裏是一個如何的文檔使用GridView https://developer.android.com/guide/topics/ui/layout/gridview.html

<GridView android:id="@+id/grid_view" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_gravity="top" 
      android:layout_margin="10dp" 
      android:horizontalSpacing="10dp" 
      android:numColumns="2" 
      android:verticalSpacing="10dp" /> 
相關問題