Android AppCompat v21微调器样式

Android AppCompat v21微调器样式,android,android-spinner,android-appcompat,material-design,Android,Android Spinner,Android Appcompat,Material Design,我刚刚将我的AppCompat v20应用程序和AppCompat v21一起升级到API 21。大多数事情都没有问题,这篇文章很有帮助:除了微调器之外,我的大多数视图看起来都不错。我的应用程序的主题是: <style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 我没有为微调器定义自定义样式。我也没有定义布局,我以编程方式将微调器添加到视图中。下面是它的屏幕截图: 我还将MinSdkVer

我刚刚将我的AppCompat v20应用程序和AppCompat v21一起升级到API 21。大多数事情都没有问题,这篇文章很有帮助:除了微调器之外,我的大多数视图看起来都不错。我的应用程序的主题是:

<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar">

我没有为微调器定义自定义样式。我也没有定义布局,我以编程方式将微调器添加到视图中。下面是它的屏幕截图:


我还将MinSdkVersion设置为15。有些样式显然来自新材质主题,如深色EditText行,但我的标签和文本的自定义文本样式似乎与以前相同,因此迁移正常。我该怎么做才能使我的微调器与主题的其他部分一样?似乎AppCompat v21中的某些内容认为,当我的主题是浅主题时,我的主题是暗主题。

我现在已经解决了这一问题,直到API 21 AppCompat和支持库变得更加清晰。您需要做的是为微调器创建xml布局: 然后在代码中:

final View spinView = inflate(context, R.layout.mult_choice, null);
spin = (Spinner) spinView.findViewById(R.id.mult_choice_spinner);
addView(spin);

它将从您的主题中选择合适的样式。

您解决过这个问题吗?“我也还在看。”西尔弗说。就谷歌而言,这是一个不完整的支持库。我会补充我的答案,这是一个不错的解决办法。也许可以试一试。我走了另一条路,只是在api-21+中使用了棒棒糖微调器,而在任何旧版本中都默认使用Holo微调器