android - XML में स्पिनर के ड्रॉप डाउन एरो का रंग बदलें




android-layout colors (5)

इसे इस्तेमाल करे:

spinner_age.getBackground().setColorFilter(ContextCompat.getColor(this,
                R.color.spinner_icon), PorterDuff.Mode.SRC_ATOP);

जैसा कि मैंने अपने प्रश्न में लिखा है, मैं XML में एक Spinner के ड्रॉप डाउन एरो (डिफ़ॉल्ट तीर, कस्टम तीर या ऐसा कुछ नहीं) का रंग बदलना चाहता हूं, लेकिन समस्या यह है कि मुझे कुछ भी नहीं मिला XML से इसका संदर्भ लें।

क्या यह संभव है? यदि हाँ, तो मैं रंग कैसे बदल सकता हूँ?

अग्रिम में धन्यवाद।


इसे प्राप्त करने के तीन तरीके हैं।

1. कोड के माध्यम से:

अपने xml में, सुनिश्चित करें कि आपके स्पिनर के पास एक आईडी है। मान लीजिए कि हमारे पास आईडी "स्पिनर" वाला स्पिनर है।

अपने कोड में, अपने onCreate में निम्नलिखित जोड़ें ():

Spinner spinner = (Spinner) findViewById(R.id.spinner);
spinner.getBackground().setColorFilter(getResources().getColor(R.color.red), PorterDuff.Mode.SRC_ATOP);

जहाँ लाल रंग आपके परिभाषित रंग है। वैल्यू फ़ोल्डर में xml

2. xml के माध्यम से:

एपीआई के लिए 21+:

<Spinner
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:backgroundTint="@color/red" />

या यदि आप समर्थन पुस्तकालय का उपयोग करते हैं, तो आप उपयोग कर सकते हैं:

<android.support.v7.widget.AppCompatSpinner
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:backgroundTint="@color/red" />

3. तालिका के माध्यम से:

आप इस ऑनलाइन टूल का उपयोग कर सकते हैं: http://android-holo-colors.com

यह आपके पसंदीदा रंग के साथ किसी भी दृश्य के लिए कस्टम ड्राअब उत्पन्न करेगा। सुनिश्चित करें कि आप स्पिनर का चयन करते हैं, फिर संसाधनों को डाउनलोड करें।


पृष्ठभूमि विशेषता का उपयोग करें

<Spinner
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:backgroundTint="@color/white"
        />

यदि min_SDK <21 (लॉलीपॉप) आपको AppCompatSpinner का उपयोग करना चाहिए

<android.support.v7.widget.AppCompatSpinner
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:backgroundTint="@color/white"
        /> 

मुझे आश्चर्य है कि किसी ने इसे इंगित नहीं किया था, लेकिन आप सिर्फ Widget.AppCompat.Spinner सकते हैं Widget.AppCompat.Spinner और backgroundTint बदल दें

<style name="Spinner" parent="Widget.AppCompat.Spinner">
        <item name="backgroundTint">@color/spinnerTint</item>
</style>

और इसे Spinner लागू करें

<Spinner
    style="@style/Spinner"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:spinnerMode="dropdown" />

<Spinner
            android:id="@+id/spinner"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:backgroudTint="#00000" />






android-color