2013-07-27 3 views
5

मुझे निम्न समस्या है:एंड्रॉइड में int रंग कोड कैसे काम करते हैं?

मेरे पास एक सूची दृश्य है, मैं इस सूची दृश्य के आइटम विभाजक (विभक्त) को एक ढाल रंग असाइन करना चाहता हूं। मैं निम्नलिखित कोड का उपयोग कर रहा:

list = (ListView) findViewById(R.id.list); 
    int[] colors = { 0, 0xffffff00, 0 }; 
    list.setDivider(new GradientDrawable(Orientation.RIGHT_LEFT, colors)); 
    list.setDividerHeight(4); 

मैं से रंग कोड (0xffffff00) ऊपर देखा: http://developer.android.com/reference/android/graphics/Color.html

समस्या:

हालांकि इस रंग पीला है, जो मैं चाहता है स्वर्ण। मुझे यह जानने में भी दिलचस्पी है कि यह कैसे काम करता है, मेरा मतलब है कि मैं अपनी पसंद के रंग को कैसे परिभाषित कर सकता हूं, अब तक मैंने डेवलपर साइट से समझने की कोशिश की लेकिन यह बहुत स्पष्ट नहीं है।

+0

[colorpicker] (http://www.colorpicker.com/) – CRUSADER

+0

एफएफ के संदर्भ में इन रंग मानों का उपयोग कैसे करें? मैं उस भाग में उलझन में हूँ! – user2613996

+1

जैसा कि @blackbelt ने कहा था कि पहला एफएफ अल्फा घटक है, अधिक पारदर्शिता उद्देश्य के लिए, एफएफ पूरी तरह से अपारदर्शी है और पारदर्शी के लिए 00 है। तो, FFC0C0C0 पूरी तरह से अपारदर्शी ग्रे रंग है और 00C0C0C0 पारदर्शी ग्रे रंग है। तो, पारदर्शिता बिट्स द्वारा preceeded ऊपर उल्लेख साइट से रंग कोड का उपयोग .. :) – CRUSADER

उत्तर

8

जो आपने लिखा है हेक्स नोटेशन है। आप 4 घटकों से बना रंग के बारे में सोच सकते हैं। ARGB। आपके उदाहरण में आपके पास 0xffffff00 है। पहला एफएफ अल्फा घटक है, दूसरा एफएफ लाल घटक है, तीसरा एफएफ हरा घटक है चौथा 00 नीला घटक है। उन हेक्साडेसिमल मानों को बदलें जिन्हें आप अपने रंग प्राप्त कर सकते हैं।

उपयोग

int color = Color.argb(255, 255, 175, 64); 

या सोने के लिए हेक्स कनवर्टर

+0

ठीक है, मैं एक आरजीबी रंग है: आर: 255 जी: 175 बी: 64 मैं इसे कैसे एफएफ के मामले में repressent करते हैं? – user2613996

+0

बिंगो !! एक जादू की तरह काम करता है! – user2613996

2

के लिए एक iteger का उपयोग आप एक पीले रंग की है कि हरी की तुलना में अधिक लाल है की जरूरत है, तो 0xffffc000 प्रयास करें। दशमलव में जो लाल 255 हरा 1 9 2 नीला होगा। वास्तव में यह समझने के लिए कि आरजीबी सिस्टम कैसे काम करता है, मूल्यों के साथ खेलते समय खर्च करता है, मुझे नहीं लगता कि इसके बारे में पढ़कर गहरी समझ प्राप्त करना संभव है।

+0

हां मैं पूरी तरह उलझन में हूं कि एफएफ कैसे काम करता है और आरएफबी को एफएफ प्रतिनिधित्व में बदलने के लिए क्या मूल्य है। धन्यवाद मुझे यह कोशिश करने दो! – user2613996

+1

आप पूछ रहे हैं कि दशमलव संख्या को हेक्साडेसिमल में कैसे परिवर्तित करें? 16 तक विभाजित करें: उद्धरण पहला अंक है और शेष दूसरा है। ए, बी, .. 10, 11 के लिए लिखें .. चूंकि 16 से विभाजन मानसिक अंकगणित में आसान नहीं है, तो बस दशमलव को भूलना और हेक्साडेसिमल में उपयोग करना बेहतर है – Joni

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