2013-08-03 18 views
21

मैं अपने Android एप्लिकेशन की पृष्ठभूमि का रंग कैसे निर्धारित करें। जब मैं कोशिश करता हूं:सेट पृष्ठभूमि रंग: एंड्रॉयड

LinearLayout li=(LinearLayout)findViewById(R.id.myLayout); 
li.setBackgroundColor(Color.parseColor("#rrggbb")); 

मेरा ऐप हमेशा क्रैश हो जाता है। क्या कोई मेरी वहां मदद करेगा। धन्यवाद

+0

कारण है कि यह दुर्घटनाओं? लॉगकैट क्या कहता है? मेरा मानना ​​है कि यह किसी और चीज के कारण है, उदाहरण के लिए, क्या आप 'setContentView' विधि का उपयोग करके अपनी गतिविधि में एक लेआउट सेट करते हैं? –

+1

क्या आप वास्तव में 'Color.parsecolor (" # rrggbb ") का उपयोग करते हैं? आप हेक्स का उपयोग करना चाहिए वहाँ –

उत्तर

38
Color.parseColor("#rrggbb") 

#rrggbb के बजाय आप rr स मान 0 का उपयोग करना चाहिए एफ के लिए, gg और bb:

उदा Color.parseColor("#000000") या Color.parseColor("#FFFFFF")

Source

प्रलेखन से:

सार्वजनिक स्थैतिक int parseColor (स्ट्रिंग colorString):

रंग स्ट्रिंग पार्स, और इसी रंग-पूर्णांक लौट आते हैं। स्ट्रिंग पार्स नहीं किया जा सकता है, तो एक IllegalArgumentException अपवाद फेंकता है। समर्थित प्रारूप हैं: #RRGGBB #AARRGGBB 'red', 'ब्लू', 'हरित', 'काली', 'सफेद', 'ग्रे', 'सियान', 'मैजेंटा', 'पीला', 'lightgray', 'darkgray', 'ग्रे', 'lightgrey', 'darkgrey', 'एक्वा', 'fuschia', 'चूना', 'लाल', 'नौसेना', 'जैतून', 'बैंगनी', 'चांदी', 'चैती'

तो मुझे विश्वास है कि अगर आप #rrggbb उपयोग कर रहे हैं तो आप अपने logcat में IllegalArgumentException हो रही है

Source

वैकल्पिक:

Color mColor = new Color(); 
mColor.red(redvalue); 
mColor.green(greenvalue); 
mColor.blue(bluevalue); 
li.setBackgroundColor(mColor); 

Source

6

इस प्रयास करें:

li.setBackgroundColor(android.R.color.red); //or which ever color do you want 

संपादित करें: पोस्टिंग logcat फ़ाइल भी मदद मिलेगी।

+0

mainLayout.setBackgroundColor (getResources() getColor (android.R.color.black)।); – fullMoon

13

यह सवाल एक वर्ष से एक है, लेकिन यह दूसरों के लिए भी कर सकते हैं। करने के लिए कोड के पक्ष में रंग पिकर का उपयोग कर #fff टाइप करने के लिए जल्दी से के रूप में के नए संस्करणों पर रंग का चयन पर

li.setBackgroundColor(getResources().getColor(R.color.blue)); 

    or 

    li.setBackgroundColor(getResources().getColor(android.R.color.red)); 

    or 

    li.setBackgroundColor(Color.rgb(226, 11, 11)); 


    or 
    li.setBackgroundColor(Color.RED) 
0

वैसे, एक अच्छा टिप है बस और फिर:

इस प्रयास करें आप जो चाहते हैं उसे चुनें। सभी रंग हेक्साडेसिमल को याद करने से तेज़ और आसान। उदाहरण के लिए:

android:background="#fff" 
संबंधित मुद्दे