1

我用于Theme.Sherlock.Light.DarkActionBar我的整个应用程序。现在操作栏背景颜色默认为黑色。如何改变这种颜色。基本上如何为整个应用程序自定义主题?

<activity
            android:name="com.mypath.myapp.FirstActivity"
            android:label="@string/app_name"
            android:theme="@style/Theme.Sherlock.Light.DarkActionBar"
            >
4

4 回答 4

1

您可以android:theme=theme_style<application>标签中使用。现在,如果您希望您的操作栏与主题给出的不同,那么您可以通过<style></style专门为您的操作栏定义样式来覆盖它。

这是概念。去res > values > styles.xml。您可以按如下方式扩展或自定义主题:

     <style name="AppBaseTheme" parent="android:Theme.Light">
          <item name="android:background">@color/background_dark</item>
      </style>

更新: 或者,如果您想为所有应用程序进行通用(不是特定于主题)更改,那么您可以编辑sdk/platforms/android-target/data/res/values/styles.xml

或者,如果您想覆盖所有应用程序的默认主题,那么您可以编辑sdk/platforms/android-target/data/res/values/themes.xml

更新 - 发现这个:

ActionBar 开发者文档。此链接显示“您可以使用 Android 3.0(API 级别 11)中添加的 ActionBar API 控制操作栏的行为和可见性。” 所以我假设你的目标至少是 API 11。

如果您的目标是 API 11 及更高版本,您可以执行高级自定义样式,如下所示:

    <resources>
            <style name="CustomActivityTheme" parent="@android:style/Theme.Holo">
                <item name="android:actionBarStyle">@style/MyActionBar</item>
            </style>

            <style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
                <item name="android:background">@drawable/ab_background</item>
                <item name="android:backgroundStacked">@drawable/ab_background</item>
              <item name="android:backgroundSplit">@drawable/ab_split_background</item>
            </style>
    </resources>

给你,造型动作栏背景

于 2013-01-07T09:08:56.547 回答
0

您可以在应用程序标签的清单文件中为整个应用程序定义主题,如下所示:

 <application
    android:name="com.test"
    android:icon="@drawable/appicon"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.NoTitleBar" > <---Define your own style here.
于 2013-01-07T09:06:10.073 回答
0

看看http://actionbarsherlock.com/theming.html。您必须创建自己的主题样式。

于 2013-01-07T09:08:04.033 回答
0

用于修改默认 android sdk 主题您可以在以下位置找到 android Sdk Themes.xml 文件:

\android-sdk\platforms\...\data\res\values\themes.Xml

这样您就可以更改整个应用程序主题。

于 2013-01-07T09:11:54.147 回答