android:Widget.Holo.Spinner显示黑色背景

时间:2017-05-16 22:09:01

标签: android android-view android-spinner android-theme android-styles

默认的android微调器只显示了一个小箭头。所以,我尝试使用Widget.Holo.Spinner来显示下划线。这是我的风格:

<style name="XRSpinner" parent="android:Widget.Holo.Spinner">
    ...
    ...
    ...
</style>

预览时显示确定,但是当我运行它时,微调器显示黑色背景。我也试过parent="android:Widget.Holo.Light.Spinner",但它仍然显示黑色背景。

有什么想法吗?

谢谢!

已更新

这是我的应用程序清单

<application
    android:name=".XRWareStock"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/Theme.AppCompat.Light.NoActionBar" >
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我的minSdkVersion为19,targetSdkVersion为25。

2 个答案:

答案 0 :(得分:0)

  

默认的android微调器只显示了一个小箭头

不推荐使用Holo主题;不用担心,您不必重新发明轮子来创建自定义微调器布局,有几个解决方案,如BetterSpiner,让您的生活更轻松。它有几种风格。

答案 1 :(得分:0)

您是否希望有下划线和/或更改箭头?

对于下划线 ,您可以将您的风格的父级更改为:

style="@style/Base.Widget.AppCompat.Spinner.Underlined"

因此,对于您的风格名称:

<style name="XRSpinner" parent="Base.Widget.AppCompat.Spinner.Underlined">

如果您想更改箭头的颜色:

<强>爪哇

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

<强> XML

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