2012-08-23 31 views

cevap

7

Bir layerlist kullanarak ve dolgu ile karıştırmasını bunu başarabilirsiniz. 3 unsurları gerekir:

1: 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: senin sınırın renkte bir katı şekildir bir border.xml şekli, 'iç' şekli, Eğer sınır etrafında görünmesini istediğiniz şekli: 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: bir katman listesi eachother üstünde bu 2 koyacağız. Sen iç şekline dolgu ayarlayarak sınır oluşturun: 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" 

(üst, sol, sağ, alt)

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

felç istediğiniz yeri burada belirtin

(eğer inme görünmesini istediğiniz) TextView'un arka planında, Düzen vb

Ya da sadece sınırlara sahip 9Patch görüntü oluştururken bu ayarlayın.

+0

bu http://stackoverflow.com/questions/40322955/android-shape-border-with-gradient-and-middle-transparent nasıl? – Suman

İlgili konular