最近在写布局的时候,给LinearLayout
添加分割线,并且想让分割线有上下边距,于是就自定义一个shape
:
1 2 3 4 5 6 7 8
| <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <size android:height="@dimen/line_height" /> <solid android:color="@color/main_line" /> <padding android:bottom="10dp" android:top="10dp" /> </shape>
|
可是事与愿违,实际效果并没有上下边距。
解决方法:
把shape
放在layer-list
的item
中,直接在item
的节点下设置top
和bottom
:
1 2 3 4 5 6 7 8 9 10
| <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:bottom="10dp" android:top="10dp"> <shape android:shape="rectangle"> <size android:height="@dimen/line_height" /> <solid android:color="@color/main_line" /> </shape> </item> </layer-list>
|