मैं एक्सएमएल में आसानी से पुन: प्रयोज्य आधार आकार (या ढाल, या कोनों) को कैसे परिभाषित कर सकता हूं?ग्रेडियेंट/आकार/कॉर्नर के एक्सएमएल अभिभावक शैली को परिभाषित करना
मेरे पास एक दर्जन या तो ड्रॉइंग ग्रेडिएंट हैं जो प्रारंभ और अंत रंगों के अलावा समान होंगे। मैं कहीं और समान सामान को परिभाषित करने की उम्मीद कर रहा था और प्रत्येक अलग ढाल के लिए एक एक्सएमएल फ़ाइल है जो केवल प्रारंभ और अंत रंगों को परिभाषित करता है। क्या यह संभव है?
इस आधार है:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient xmlns:android="http://schemas.android.com/apk/res/android"
android:type="linear"
android:angle="270"
android:startColor="#e1ffffff"
android:endColor="#e100ff00">
<stroke android:width="1dp"
android:color="#ff000000" />
<corners android:radius="4dp" />
</gradient>
</shape>
तब मैं startColor और endColor अधिलेखित करना चाहते थे (और शायद कोनों भी त्रिज्या या किसी अन्य संपत्ति) प्रत्येक drawable के एक्सएमएल फ़ाइल में।
मैंने माता-पिता और शैलियों दोनों का उपयोग करने की कोशिश की, लेकिन उनमें से कोई भी गुणों का उपयोग नहीं करता है।
<style name="base_gradient">
<item name="android:angle">270</item>
<item name="android:type">linear</item>
<item name="android:startColor">#e1ffffff</item>
<item name="android:endColor">#e100ff00</item>
</style>
और फिर drawable दिखेगा: उदाहरण के लिए:
<gradient style="@style/base_gradient" />
काम नहीं किया है। मैंने उपरोक्त अपनी एक्सएमएल फ़ाइल में उपरोक्त डालने की कोशिश की और फिर प्रत्येक ड्रायबल के लिए ऐसा किया:
<gradient parent="@drawable/base_gradient" />
यह काम नहीं करता था।
क्या ऐसा करने का कोई तरीका है?