平常使用LinearLayout的時候,有時候會需要對每個item設置間距,但是每個item都加上margin的方法實在有些繁瑣
因爲之前是在寫JavaFx程序,裏面的Vbox或Hbox都會提供一個Space的參數,可以用來快速設置每個item之間的間距
而Android這邊,是沒看見對應的方法,於是搜索了一番,發現了可以通過divider分割線來一鍵設置item間距
實現步驟
1.創建divider對象
在drawble文件夾裏面創建一個名爲shape_option_item_pading.xml
對象,然後設置寬高大小,這裏我是針對垂直排列的線性佈局,讓每個item間隔16dp,所以只設置了高度
xml代碼如下所示:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<size
android:width="0dp"
android:height="16dp" />
</shape>
當然,這裏你也可以加上背景色
2.LinearLayout使用
<androidx.appcompat.widget.LinearLayoutCompat
app:divider="@drawable/shape_option_item_pading"
app:showDividers="middle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
</androidx.appcompat.widget.LinearLayoutCompat>
-
divider
設置爲創建好的shape_option_item_pading.xml
對象 -
showDividers
設置顯示類型,有4種類型可選:beginning
end
middle
none
-
beginning
開頭設置分割線 -
end
末尾設置分割線 -
middle
中間設置分割線 -
none
不設置分割線
也很好理解,我們需要中間每個item自動加上間距,所以上述代碼就是選用了middle