我目前正在更新旧应用。警报具有旧样式(非常难看),具有黑色背景。如何拥有新的白色风格? (nota:似乎在Gradle中使用最近的params,如compileSdkVersion 25,buildToolsVersion“25.0.2”,targetSdkVersion 22是不够的)
请注意,我的循环ProgressBars也是“旧样式”。
感谢您的帮助!
答案 0 :(得分:2)
我的应用程序的'application'标签中使用的主题是android:theme =“@ android:style / Theme.NoTitleBar”
这是Android 1.x / 2.x的原始主题。主题影响很多事情,包括警报对话框和ProgressBar
。
我应该选择哪种类型的现代风格兼容SDK 10?
选项#1:不管它和它一起生活。
选项#2:
创建res/values-v13/styles.xml
并创建一个继承自AppTheme
@android:style/Theme.Holo.NoActionBar
)
创建res/values/styles.xml
并创建一个具有相同名称的自定义主题(例如,AppTheme
),其继承自@android:style/Theme.NoTitleBar
让<application>
使用您的自定义主题(例如,AppTheme
)
这将采用API Level 13+设备上的Holo主题。
选项#3:
完成选项#2
同时添加res/values-v21/styles.xml
并创建一个与@android:style/Theme.Material.NoActionBar
这将采用API Level 13-20设备上的Holo主题和API Level 21+设备上的Material主题。
选项#4:重写您的应用以使用appcompat-v7
(AppComaptActivity
,已修改的菜单资源等)并使用合适的基于Theme.AppCompat
的主题。这将为您提供所有版本的相同外观,代价是修改所有活动,所有菜单资源,添加appcompat-v7
依赖项,以及可能还有其他更改。