Android V21样式是否也需要使用Theme.AppCompat主题(或子代)?
使用材质设计主题时,my values-v21文件夹是否应包含对Theme.Appcompat的引用? 我的API最小值为9,目标API为21 我有以下资料: AndroidManifest.xmlAndroid V21样式是否也需要使用Theme.AppCompat主题(或子代)?,android,material-design,Android,Material Design,使用材质设计主题时,my values-v21文件夹是否应包含对Theme.Appcompat的引用? 我的API最小值为9,目标API为21 我有以下资料: AndroidManifest.xml <application ... android:theme="@style/AppTheme"> 我用ActionBarActivity 我主要看了下面的视频您可以使用此代码来区分不同的API版本 if (Build.VERSION.SDK_INT >=
<application
...
android:theme="@style/AppTheme">
我用ActionBarActivity
我主要看了下面的视频您可以使用此代码来区分不同的API版本
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
// Do something for Lollipop and above versions
} else{
// do something for phones running an SDK before Lollipop
}
如果在没有Appcompat的情况下为API21创建单独的布局,则不需要参考
否则,您仍将使用需要使用主题的Appcompat。Appcompat在我后面的视频中起作用,因为讲师使用的不是棒棒糖仿真器,而是更低版本的。该系列的下一个视频解释了这个问题 正确的定义应该是: values-v21\styles.xml
<resources>
<style name="AppBaseTheme" parent="Theme.AppCompat.NoActionBar">
</style>
<style name="AppTheme" parent="AppBaseTheme">
</style>
</resources>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Material.Light">
</style>
</resources>
<resources>
<style name="AppTheme" parent="AppBaseTheme">
</style>
</resources>
<resources>
<style name="AppBaseTheme" parent="Theme.AppCompat">
</style>
<style name="AppTheme" parent="AppBaseTheme">
</style>
</resources>
values\styles.xml
<resources>
<style name="AppBaseTheme" parent="Theme.AppCompat.NoActionBar">
</style>
<style name="AppTheme" parent="AppBaseTheme">
</style>
</resources>
<resources>
<style name="AppBaseTheme" parent="android:Theme.Material.Light">
</style>
</resources>
<resources>
<style name="AppTheme" parent="AppBaseTheme">
</style>
</resources>
<resources>
<style name="AppBaseTheme" parent="Theme.AppCompat">
</style>
<style name="AppTheme" parent="AppBaseTheme">
</style>
</resources>
本要点可帮助您: