【问题标题】:I can't change the activity theme in android studio我无法更改 android studio 中的活动主题
【发布时间】:2015-11-13 04:14:56
【问题描述】:

我正在使用活动设计来尝试更改主题。

不幸的是,当我在手机上运行该应用程序时,它始终显示这种蓝色。 我不知道为什么它是蓝色的,也不知道这个主题是从哪里来的。 这个问题最近才开始出现。 有什么帮助吗?

这是相关代码。 请记住,这只是一个空活动。 我没有以任何方式修改代码。 出于某种原因,android studio 默认采用这种行为。

为了清楚起见,我尝试使用第二张图片中突出显示的按钮更改主题。 无论我选择哪个主题,改变的只是 IDE 中的活动视图。

AndroidManifest.xml

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme" >
    <activity android:name=".MainActivity" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

colors.xml

<resources>
    <color name="colorPrimary">#3F51B5</color>
    <color name="colorPrimaryDark">#303F9F</color>
    <color name="colorAccent">#FF4081</color>
</resources>

styles.xml

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

</resources>

Screencap from phone

What it should look like

【问题讨论】:

  • 你能提供你正在使用的代码以及它应该是什么颜色
  • 在styles.xml 中更改&lt;color name="colorPirmary"&gt;#3F51B5&lt;/color&gt; 中的十六进制值以匹配您想要的颜色

标签: java android android-studio themes look-and-feel


【解决方案1】:

您需要在 colors.xml 中将十六进制颜色值更改为您想要的颜色,如下所示

<resources>
    <color name="colorPrimary">#d3d3d3</color>
    <color name="colorPrimaryDark">#a8a8a8</color>
</resources>

更改父主题为

<style name="AppTheme" parent="Theme.AppCompat.Light">

改为

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

【讨论】:

  • 我知道这一点。我设法更改了操作栏和状态栏。不幸的是,我无法以这种方式更改文本的颜色,因此无法在白色背景上看到白色文本。主题是最干净和最简单的方法,但主题的更改没有效果。另外不知道为什么我的action bar现在默认是蓝色的。
  • 这不是一个完整的解决方案,但效果很好。我仍然不明白为什么我实际上不能改变主题。做你所说的只会改变操作栏文本的颜色。我不得不手动更改其他颜色。无论如何,谢谢。
【解决方案2】:

也许更简单的方法是创建一个不同的 xml 文件来管理此类问题。为此,请右键单击您的可绘制文件夹-新建-可绘制资源文件-Name.xml。

然后上网http://angrytools.com/gradient/ 并创建您想要的任何主题。获取生成的代码并将其粘贴到您创建的 xml 文件中。

接下来,在活动 xml 文件中的布局标记中,放置以下内容 线

android:background="@drawable/Name"

然后您可以通过编辑您创建的可绘制文件来修改您的主题。希望这会有所帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-22
    • 2021-11-21
    • 2014-12-23
    • 2016-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多