2012-08-23 1407 views

回答

7

您可以通過使用layerlist並用填充搞亂實現這一目標。你需要3個要素:

1:border.xml形狀,這僅僅是一個固體形狀的邊框的顏色:border.xml

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#ff0000"/> 
</shape> 

2: '內部' 形狀,你想邊框出現的形狀:inner.xml

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#00ff00"/> 
</shape> 

3:一個圖層列表,它將把這兩個放在海誓山盟之上。您可以通過設置填充的內部形狀創建邊框:layerlist.xml

<?xml version="1.0" encoding="UTF-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:drawable="@drawable/border"/> 
<item android:drawable="@drawable/inner" 

這裏指定您希望有一個行程(頂部,左側,右側和底部)

android:top="3dp" android:right="0dp" android:bottom="3dp" 
android:left="3dp" /> 

將此設置爲TextView,Layout等的背景(您希望筆畫出現的位置)

或者只是創建帶有邊框的9Patch圖像。

+0

如何喜歡這個http://stackoverflow.com/questions/40322955/android-shape-border-with-gradient-and-middle-transparent? – Suman