我正在尝试在Android应用程序中设置主题设置,但是样式标签继承似乎无法正常工作。该应用程序正在使用提供给父级而不是子级的值。
在values / styles.xml中有以下内容
<style name="AppTheme" parent="BaseAppTheme">
<item name="colorAccent">@color/blue</item>
</style>
<style name="BaseAppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorAccent">@color/green</item>
</style>
我在这里应用主题
MainActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.AppTheme);
...
}
我期望使用colorAccent标签的元素显示为蓝色,但是它们显示为绿色。应用程序中没有其他任何东西可以直接引用样式标签BaseAppTheme。
答案 0 :(得分:0)
应该在调用onCreated之前创建主题。如以下代码所示
private void OnSelection(object sender, SelectedItemChangedEventArgs e)
{
((ListView)sender).SelectedItem = null;
}
答案 1 :(得分:0)
就我而言,问题在于我在我的风格中覆盖了 values > style.xml 中的 AppTheme
。但我执行应用程序的设备中的 Android 版本高于 API 26。
那是怎么回事?在主要风格的 values-v26 > style.xml 中已经有一个 AppTheme
。所以我只需要创建一个 values-v26 > style.xml 和 AppTheme
在我的风格的 res 中,就是这样.