【问题标题】:How to programmatically change color of a Spinner in Android?如何以编程方式更改 Android 中 Spinner 的颜色?
【发布时间】:2017-05-16 01:44:09
【问题描述】:

我能够使用以下代码行将 Color 设置为 Spinner 中的第一项。但是如何为用户选择的第一个项目以外的项目赋予颜色。

    List<String> spinnerArray =getContacts();
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(
        this,R.layout.spinner_effect, spinnerArray);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    Spinner contactSpinner = (Spinner) findViewById(R.id.SpinnerchooseContact);
    contactSpinner.setAdapter(adapter);

((TextView) contactSpinner.getChildAt(0)).setTextColor(Color.GRAY);

【问题讨论】:

标签: android


【解决方案1】:

创建一个名为 dropdown.xml 的新 xml 文件,在此布局中定义您的样式

<?xml version="1.0" encoding="utf-8"?>
<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    style="?android:attr/spinnerDropDownItemStyle"
    android:singleLine="true"
    android:layout_width="match_parent"
    android:layout_height="?android:attr/listPreferredItemHeight"
    android:ellipsize="marquee"
    android:textColor="#aa66cc"/>

然后设置你的适配器

adapter.setDropDownViewResource(R.dropdown);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-02
    • 1970-01-01
    • 2016-07-03
    • 1970-01-01
    • 1970-01-01
    • 2014-11-17
    • 2023-03-08
    相关资源
    最近更新 更多