如何在 Android 应用中设置全息黑暗主题?
Posted
技术标签:
【中文标题】如何在 Android 应用中设置全息黑暗主题?【英文标题】:How to set the holo dark theme in a Android app? 【发布时间】:2012-09-24 07:49:24 【问题描述】:如何在我的应用中设置深色全息主题? 这时候我得到了这个:
<style name="AppTheme" parent="android:Theme.Holo.Light" />
但是当我把它改成:
<style name="AppTheme" parent="android:Theme.Holo.Dark" />
我收到一个错误error: Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Holo.Dark'.
如何解决问题?
【问题讨论】:
什么资源错误?详细... 错误:检索项目的父项时出错:未找到与给定名称“android:Theme.Holo.Dark”匹配的资源。 【参考方案1】:更改parent="android:Theme.Holo.Dark"
给parent="android:Theme.Holo"
holo 黑暗主题被称为 Holo
【讨论】:
我花了几天时间才找到这篇文章。将主题更改为 Holo 时,预览工作正常,但在 styles.xml 中,我得到了错误添加“.Dark”的父级。这就是为什么它一直显示白色主题。为此添加了错误报告... 事实证明,更改预览主题不会影响任何文件。它只是用于预览主题的外观。【参考方案2】:默认情况下,android 会将 Holo 设置为 Dark 主题。没有名为 Holo.Dark 的主题,只有 Holo.Light,这就是您收到资源未找到错误的原因。
所以只需将其设置为:
<style name="AppTheme" parent="android:Theme.Holo" />
【讨论】:
【参考方案3】:根据android.com,只需要在AndroidManifest.xml文件中设置即可:
http://developer.android.com/guide/topics/ui/themes.html#ApplyATheme
将主题属性添加到您的应用程序元素对我有用:
--AndroidManifest.xml--
...
android:theme="@android:style/Theme.Holo"/>
...
应用>
【讨论】:
虽然这是一个可行的解决方案....在styles.xml中保留主题更改并在清单中引用是一个好习惯【参考方案4】:在您的应用程序 android 清单文件中,在应用程序标签下,您可以尝试其中几个主题。
替换
<application
android:theme="@style/AppTheme" >
由安卓系统定义的不同主题。它们可以是:-
android:theme="@android:style/Theme.Black"
android:theme="@android:style/Theme.DeviceDefault"
android:theme="@android:style/Theme.DeviceDefault.Dialog"
android:theme="@android:style/Theme.Holo"
android:theme="@android:style/Theme.Translucent"
这些主题中的每一个都会对您的应用程序产生不同的影响,例如 DeviceDefault.Dialog 将使您的应用程序看起来像一个对话框。你应该尝试更多这些。您可以查看 android sdk 或简单地使用 Eclipse IDE 中的自动完成功能来探索各种可用选项。
定义自己的主题的正确方法是编辑应用程序资源文件夹中的styles.xml
文件。
【讨论】:
是的,正确的做法是编辑styles.xml来设置主题。例如:以上是关于如何在 Android 应用中设置全息黑暗主题?的主要内容,如果未能解决你的问题,请参考以下文章
跨平台:如何在 UWP 中设置不同的递增内部版本号并保持版本名称,如 iOS/Android
导出已签名、混淆的 Android 应用程序时,如何在 Eclipse 中设置 ProGuard?
如何在反应应用程序中设置系统偏好暗模式,但还允许用户来回切换当前主题