【问题标题】:Android custom theme安卓自定义主题
【发布时间】:2013-06-18 14:16:15
【问题描述】:

您好,我正在为我的应用制作自定义主题。我想为应用程序的其余部分(在 ActionBar 下方)有一个自定义的 ActionBar 和背景。我想知道如何做背景。现在我有:

<style name="MyTheme" parent="android:Theme.Holo">
    <item name="android:actionBarStyle">@style/dActionBar</item>
</style>

<style name="dActionBar" parent="@android:style/Widget.Holo.ActionBar">
    <item name="android:background">#4C721D</item>
    <item name="android:textColor">#FFFFFF</item>    
</style>

我只需要在MyTheme 中执行&lt;item name-"android:background"&gt;&lt;/item&gt; 还是必须创建另一个style?创建这个之后,我需要把它放在 res/styles 文件夹中吗?还有什么 API 限制,如果有的话?

【问题讨论】:

  • 我就是这样改变背景的吗?通过将android:background 添加到“MyTheme”?这段代码是否在 res/styles 文件夹中?有趣的事情发生了,当我第一次写这篇文章时,我在那个文件夹中,现在如果我回去,它看起来完全不同,并且不包含这段代码

标签: android xml themes android-theme


【解决方案1】:

不要忘记将您的主题应用到您的 AndroidManifest.xml 中的应用程序中。

<application android:theme="@style/CustomActivityTheme" ... />

您可以找到有关设置 Actionbar here 样式的所有信息。

要为您的 ActionBar 设置漂亮的 Holo 外观,试试这个website

希望这会有所帮助!

【讨论】:

  • 谢谢!我已经将它添加到清单中并且我的 ActionBar 很好,我只想知道如何更改应用程序其余部分的背景(在操作栏下方)。抱歉,如果不清楚
  • 啊,在这种情况下,您需要在主题中设置windowBackground 属性。看看 Romain Guy 的这篇博文:android-developers.blogspot.be/2009/03/…
【解决方案2】:

尝试在您的 Style.xml 文件中使用以下代码

<resources>
    <style name="Theme.Sample" parent="Theme.AppCompat">

   <item name="android:colorBackground">@color/primary_material_dark</item>
   <item name="actionBarTheme">@color/colorGray</item>
   </style>
</resources>

只需要使用 android:colorBackground 作为项目的名称来定义背景颜色,如下所示:

    <item name="android:colorBackground">@color/primary_material_dark</item>

希望您能得到答复,谢谢。

【讨论】:

  • 并且当主题的父级是 ThemeOverlay 时,例如工具栏主题,使用 &lt;item name="android:background"&gt;@color/colorPrimary&lt;/item&gt;
  • 请注意,旧 API 版本会忽略 android:colorBackground 属性。在 API 16 上注意到这一点 - 尚未测试其他人。一种可能的解决方法是改用android:background 属性。
猜你喜欢
  • 1970-01-01
  • 2010-12-18
  • 2012-02-12
  • 1970-01-01
  • 2012-01-22
  • 2019-02-28
  • 2013-06-18
  • 2016-12-10
相关资源
最近更新 更多