2011-11-15 17 views
7

मैं एक दृश्य की पृष्ठभूमि के रूप एक काले रंग की & सफेद ninepatch drawable है और मैं एक अर्द्ध पारदर्शी ओवरले कि दृश्य ड्राइंग छोड़ देता है, लेकिन पर इच्छित रंग लागू होता है की तरह उस पर एक रंग लागू करने के लिए, चाहते हैं यह।एंड्रॉयड रंग ओवरले - PorterDuff मोड

मैंने सोचा कि drawable.setColorFilter(color,mode) चाल चल सकता है, लेकिन मैं यह नहीं समझ सकता कि विभिन्न तरीकों का क्या अर्थ है।

क्या कोई मुझे संकेत दे सकता है?

उत्तर

8

मेरा मानना ​​है कि इस सवाल का आप मदद कर सकते हैं:

Understanding the Use of ColorMatrix and ColorMatrixColorFilter to Modify a Drawable's Hue

कहा, मैं तुम्हें क्या ज़रूरत रहे हैं के लिए PorterDuff.Mode.MULTIPLY उपयोग करने का सुझाव होगा।

+0

आपका स्वागत है! :) यदि आपने फ़ोटोशॉप ब्लेंडिंग मोड का उपयोग किया है (जीआईएमपी में शायद कुछ समान है) वहां बहुत अधिक ओवरलैप है, और वे वैसे ही कम या ज्यादा काम करते हैं। – kcoppock

+0

क्या ऐसा करने का कोई तरीका है ताकि अगर प्रभाव कई बार लागू किया जाता है तो यह पहले ड्रॉ से परे टिंट को नहीं बदलता है? उदाहरण के लिए छवि अधिक से अधिक लाल हो जाती है ... – jjxtra

संबंधित मुद्दे