1

我有一个可以从 2.2 到 4.x 设备运行的应用程序。

当我在 4.x 上运行这个应用程序时,它看起来很酷,全息风格。但是当我在旧设备上运行它时,它似乎非常“轻巧”。

有一个截图,所以你可以比较: 在此处输入图像描述

这是我的清单:

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

还有我的风格:

<resources>

<!--
    Base application theme, dependent on API level. This theme is replaced
    by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.NoActionBar.Fullscreen">

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

很明显 holo 在 2.3 中不存在,但是它应该呈现它的默认设备主题,对吧?

所以输入是正确的,但是 TextView 看起来太灰了。

任何想法?

4

1 回答 1

0

正如有人建议的那样,我终于创建了一个新文件夹: res/values-v11/ 在这个文件夹上,我放了一个名为 的文件styles.xml,如下所示:

<resources>

<!--
    Base application theme, dependent on API level. This theme is replaced
    by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.NoActionBar.Fullscreen">

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

res/values/并且将为 api 低于 11 的 android 调用的文件夹包含一个styles.xml并且我已经更改了父模板,如下所示:

<!--
    Base application theme, dependent on API level. This theme is replaced
    by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="MyTheme" parent="@android:style/Theme.Light">

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

这最终是这样的:

  • api 高于 11 的设备 -> holo 主题
  • 其余:Theme.Light(“普通主题”)
于 2013-04-12T09:56:17.910 回答