मुझे पूरा यकीन है कि इस प्रश्न का पहले से ही उत्तर दिया गया है। यह बहुत आम लगता है। लेकिन मुझे जवाब नहीं मिल रहा है। मैं समाधान भी नहीं समझ सकता।चयनित विगेट्स के थीम आश्रित रंग
मैं अपने TableRow में से एक चाहते हैं अलग अलग पृष्ठभूमि रंग के लिए:
यहाँ समस्या है। यह आसान है, मुझे बस
android:background="#123456"
तालिकारो के एक्सएमएल घोषणा में जोड़ने की आवश्यकता है। लेकिन, मैं यह भी चाहता हूं कि मेरे आवेदन में दो थीम हों। अन्य विषय में, TableRow में अलग-अलग पृष्ठभूमि रंग होना चाहिए। मुझे थीम के अंदर रंग मान को परिभाषित करने और इसका उपयोग करने का कोई तरीका नहीं मिल रहा है। मैं कुछ इस तरह टाइप करने के लिए करना चाहते हैं:
<style name="Theme.MyApp" parent="@style/Theme.Light">
<color "my_cool_color">#123456</color>
</style>
<style name="Theme.MyApp.Dark" parent="@style/Theme.Dark">
<color "my_cool_color">#654321</color>
</style>
और, TableRow की घोषणा में:
android:background="@color/my_cool_color"
तो, जब मैं इस विषय को बदलें, कि एक TableRow की पृष्ठभूमि का रंग भी बदल जाता है। मैंने कई घंटों तक कई तरीकों से कोशिश की है और सफल नहीं हुआ ... एक बात मैंने कोशिश नहीं की थी, टेबलरो पर अपना खुद का विजेट बना रहा था और इसके लिए एक अलग शैली घोषित कर रहा था - मुझे लगता है कि यह काम करना चाहिए, लेकिन यह है इतनी सरल समस्या के लिए बहुत भारी समाधान।
धन्यवाद! मुझे attr.xml के बारे में कुछ मिला, लेकिन एक उपयुक्त उदाहरण नहीं मिला। इसके विपरीत, आपका जवाब और अधिक पूरा नहीं हो सका! – user1234567
मुझे आपका उत्तर बहुत उपयोगी मिला, और मेरी समस्या भी हल हो गई। +1। लेकिन मुझे अभी भी एक समस्या है, मैं कोड में परिभाषित रंगों का उपयोग करना चाहता हूं। मैं यह कैसे कर सकता हूं, कोड में attrs से रंगों का उपयोग कैसे करें (xml नहीं)? – Sandra
हां, लेकिन अगर मैं अंधेरे विषय का उपयोग करता हूं तो मैं रंग को नीला होना चाहता हूं, और अन्य हरे रंग के लिए। लेकिन मैं कोड में सही रंग कैसे प्राप्त कर सकता हूं? – Sandra