2014-06-12 15 views
7

Voglio forma sullo sfondo del layout come indicato nell'immagine sottostante. Ho provato qualcosa, che è indicato di seguito.Android: Layout con ombreggiatura arrotondata

borders.xml

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
<!--Layer 0--> 
<!--Layer 1--> 
<!--Layer 2--> 
<!--Layer 3--> 
<!--Layer 4 (content background)--> 

    <!-- dropshadow --> 
    <item> 
     <shape> 
      <solid android:color="#10CCCCCC" /> 
      <padding android:top="1dp" android:right="1dp" android:bottom="1dp" android:left="1dp" /> 
     </shape> 
    </item> 

    <item> 
     <shape> 
      <solid android:color="#20CCCCCC" /> 
      <padding android:top="1dp" android:right="1dp" android:bottom="1dp" android:left="1dp" /> 
     </shape> 
    </item> 

    <item> 
     <shape> 
      <solid android:color="#40CCCCCC" /> 
      <padding android:top="1dp" android:right="1dp" android:bottom="1dp" android:left="1dp" /> 
     </shape> 
    </item> 

    <item> 
     <shape> 
      <solid android:color="#50CCCCCC" /> 
      <padding android:top="1dp" android:right="1dp" android:bottom="1dp" android:left="1dp" /> 
     </shape> 
    </item> 

    <item> 
     <shape> 
      <solid android:color="#60CCCCCC" /> 
      <padding android:top="1dp" android:right="1dp" android:bottom="1dp" android:left="1dp" /> 
     </shape> 
    </item> 

    <!-- content background --> 
    <item> 
     <shape> 
      <solid android:color="#ffffff" /> 
     </shape> 
    </item> 
</layer-list> 

e il layout impostato come

android:background="@drawable/borders" 

Attraverso questa implementazione, sto ottenendo in questo modo

enter image description here

Come posso ottenere l'ombra esterna con gli angoli arrotondati come nell'immagine sottostante?

enter image description here

risposta

15

si dovrebbe aggiungere "angoli" per la forma:

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

<stroke android:width="3dp" 
     android:color="#ff000000" 
     /> 

<padding android:left="1dp" 
     android:top="1dp" 
     android:right="1dp" 
     android:bottom="1dp" 
     /> 

<corners android:radius="7dp"/> 

+0

Grazie Sta funzionando bene, dopo l'aggiunta di angolo in tutte le forme. –

+7

puoi '' –