2010-02-21 19 views
8

मैं एक्सएमएल में एक ड्रॉबल बनाने की कोशिश कर रहा हूं, एक आयताकार शीर्ष छोर पर एक ढाल के साथ, और दूसरा आधा भाग पर। इस तरह से यह करने के लिए नहीं है, जाहिरा तौर पर:शीर्ष आधे पर एक ढाल के साथ एक्सएमएल में एक ड्रायबल आयत बनाना और दूसरा आधा

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item> 
     <shape android:shape="rectangle"> 
       <gradient 
         android:startColor="#5a5a5a88" 
         android:endColor="#14141488" 
         android:angle="270" android:centerX="0.25"/> 

     </shape> 
    </item> 
    <item> 
     <shape android:shape="rectangle" android:top="80px"> 
       <gradient 
         android:startColor="#5aff5a88" 
         android:endColor="#14ff1488" 
         android:angle="270" android:centerX="0.25"/> 

     </shape> 
    </item> 
</layer-list> 

कैसे मैं यह कर सकता, खासकर एक तरीका है कि यह किसी भी ऊंचाई तक खींचे बनाता में?

उत्तर

8

अपने लक्ष्य को एक केंद्रीय रंग के साथ एक ढाल लाना है (रंग एक पर शुरू होता है, बीच में बी को संक्रमण है, तो अंत में सी के संक्रमण), आपके <shape> तत्वों में से एक के लिए android:centerColor और android:centerY विशेषताओं को जोड़ने और दूसरे को नूक करें। आप तीन रंगों के ढाल को एक ही आकार में कर सकते हैं।

+0

वास्तव में, मैं रंग के दो विभिन्न क्षेत्रों चाहते हैं ... हां, तो यह वास्तव में नहीं होता अंत में एक और रंग में संक्रमण हो रहा है। बीच में, यह अंत में एक पूरी तरह से अलग रंग और संक्रमण के साथ शुरू होगा। – synic

+0

फिर आपको इसे 'ड्रायबल' में क्यों चाहिए? '' 'LinearLayout' नहीं है - वे लंबवत ढेर नहीं हैं। – CommonsWare

+0

मुझे इसे एक ड्रायरेबल में चाहिए क्योंकि मैं इसे लाइनरलाउट के लिए पृष्ठभूमि के रूप में उपयोग करना चाहता हूं। – synic

0

आप के लिए छोटे बग, शीर्ष विशेषता आइटम तत्व में होना चाहिए;)

यह काम:

<?xml version="1.0" encoding="utf-8"?> 
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item> 
     <shape android:shape="rectangle"> 
      <gradient 
        android:startColor="#5a5a5a88" 
        android:endColor="#14141488" 
        android:angle="270" android:centerX="0.25"/> 

     </shape> 
    </item> 
    <item android:top="80dp"> 
    <shape android:shape="rectangle"> 
      <gradient 
        android:startColor="#5aff5a88" 
        android:endColor="#14ff1488" 
        android:angle="270" android:centerX="0.25"/> 

    </shape> 
</item> 
</layer-list> 
संबंधित मुद्दे