Android风格和主题

时间:2014-06-18 11:52:55

标签: android android-theme

我正在开发一款Android应用,我将minSDK设置为11,将targetSDK设置为18.当我的应用在Android 4.0.3设备上运行时,它看起来像是在ICS之前运行。为什么?

我的意思是EditText(s)和其他UI元素具有非Holo主题。请考虑以下图片。我在设计中看到了这一点,应该在运行时看到相同的内容:

enter image description here

但我在设备(4.0.3)中看到了这一点:

enter image description here

清单和样式(部分与问题有关)

 <uses-sdk
    android:minSdkVersion="11"
    android:targetSdkVersion="18" />

 <style name="AppBaseTheme" parent="android:Theme.Holo.Light">
    <!-- API 11 theme customizations can go here. -->
 </style>   

<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
    <!-- API 14 theme customizations can go here. -->
</style>

<style name="AppBaseTheme" parent="android:Theme.Light">
    <!--
        Theme customizations available in newer API levels can go in
        res/values-vXX/styles.xml, while customizations related to
        backward-compatibility can go here.
    -->
</style>

<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
    <!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>

2 个答案:

答案 0 :(得分:1)

根据Android开发人员的说法,视图的主题将根据最低sdk版本进行兼容。

实际上在eclipse的图形布局中没有渲染到最小的sdk版本 但当你来到真正的设备时,兼容性就会出现。

解决方案是你可以为每个视图使用自己的主题,或者你可以选择这个..

检查Holo colorsTheme generator

答案 1 :(得分:0)

您可以在设置布局文件图形布局时设置布局。
如果您使用的是eclipse,则可以在图形布局页面上更改apptheme。可以选择不同级别的API,App主题,设备 您可以对它们进行试验以清楚地了解您的问题