Android 如何在xml布局文件中使用自定义内联属性自定义视图样式
自从升级Android支持库以来,我一直在为按钮、文本视图和其他视图设置自定义颜色。显然,内联属性被应用程序主题中定义的值覆盖 我在values/styles.xml中定义了一个应用程序主题:Android 如何在xml布局文件中使用自定义内联属性自定义视图样式,android,xml,android-layout,android-appcompat,Android,Xml,Android Layout,Android Appcompat,自从升级Android支持库以来,我一直在为按钮、文本视图和其他视图设置自定义颜色。显然,内联属性被应用程序主题中定义的值覆盖 我在values/styles.xml中定义了一个应用程序主题: <resources> <!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!
<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>
<item name="colorControlActivated">@color/colorPrimary</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
</resources>
@颜色/原色
@颜色/原色暗
@颜色/颜色重音
@颜色/原色
假的
真的
例如,在我的布局文件中,我将按钮的背景和文本颜色设置如下:
<Button
...
android:textColor="@color/colorPrimary"
android:background="@drawable/homebutton"
...
/>
下面是我如何在colors.xml中定义颜色:
<resources>
<color name="colorPrimary">#0066FF</color>
<color name="colorPrimaryDark">#004AFF</color>
<color name="colorAccent">#FFFFFF</color>
<color name="background">#CCCCCC</color>
<color name="text">#555555</color>
<color name="green">#009900</color>
<color name="red">#FF0000</color>
<color name="orange">#FFA500</color>
<color name="white">#FFFFFF</color>
<color name="brown">#7A5230</color>
<color name="goalkeeper">#FFA500</color>
<color name="defender">#007c09</color>
<color name="midfielder">#1d8dc0</color>
<color name="attacker">#aa0a1c</color>
</resources>
#0066FF
#004AFF
#FFFFFF
#中交
#555555
#009900
#FF0000
#FFA500
#FFFFFF
#7A5230
#FFA500
#007c09
#1d8dc0
#aa0a1c
此外,在清单中,我正确设置了主题:
<application
android:name=".MyApplication"
android:allowBackup="true"
android:icon="@drawable/logo"
android:label="@string/app_name"
android:largeHeap="true"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:theme">
这可能是由Maven本地存储库中的错误引起的问题tools:replace=“android:theme”此标记用于清单合并,以告知如何处理特殊情况
看起来它正在更改最终产品清单中的主题属性。你能试着把它去掉吗
有关更多信息,您可以查看工具:replace=“android:theme”此标记用于清单合并,以告知如何处理特殊情况
看起来它正在更改最终产品清单中的主题属性。你能试着把它去掉吗
有关详细信息,您可以检查找到原因,从而修复问题:-)
显然,Maven本地存储库(又名m2repository)的版本29有缺陷,正如这里和这里指出的
解决方案很简单:只需降级到26版,可以在此处下载找到原因,从而修复了问题:-)
显然,Maven本地存储库(又名m2repository)的版本29有缺陷,正如这里和这里指出的
解决方案很简单:只需降级到26版,可以在此处下载如果您可以发布您的colors.xml,那就太好了,这样我们就可以检查colors语法是否正确,您也可以使用android:textColor=“?attr/colorPrimary”而不是android:textColor=“@color/colorPrimary”。所以它可以根据你的风格来选择颜色。还要确保清单中的主题集正确。@EmreAktürk我添加了colors.xml的内容。问题是我想为按钮使用任意颜色,因此如果我使用android:textColor=“?attr/colorPrimary”,我将仅限于主题颜色。此外,如果我在布局文件外以编程方式使用自定义颜色,则自定义颜色也能很好地工作。谢谢,如果你能发布你的colors.xml,那么我们可以检查一下colors语法是否正确,你也可以使用android:textColor=“?attr/colorPrimary”而不是android:textColor=“@color/colorPrimary”。所以它可以根据你的风格来选择颜色。还要确保清单中的主题集正确。@EmreAktürk我添加了colors.xml的内容。问题是我想为按钮使用任意颜色,因此如果我使用android:textColor=“?attr/colorPrimary”,我将仅限于主题颜色。此外,如果我在布局文件外以编程方式使用自定义颜色,则自定义颜色也能很好地工作。感谢在我的项目中,我正在导入另一个有自己清单的模块。如果我只是删除了标签,我会得到一个错误。我该怎么换呢?好的。通常,您的其他模块不应该在清单中有应用程序标记。当然,这是你们从网上找到的图书馆。您可以导入一个示例应用程序。如果是,基本上取下样品模块。库模块足以供您使用。另一种删除android的方法是:从模块中删除主题属性,这会导致错误。如果您从web中找到库,您可以向我发送一个链接,以便我检查您应该如何导入,让我们尝试从arenadeamon清单中删除主题属性?如果有效,您可以将删除的主题属性添加到arena deamon清单中的活动中。因此,基本上,我们将主题声明为一个特定的活动,而不是整个应用程序,这可能会与我们的项目冲突。在我的项目中,我正在导入另一个有自己清单的模块。如果我只是删除了标签,我会得到一个错误。我该怎么换呢?好的。通常,您的其他模块不应该在清单中有应用程序标记。当然,这是你们从网上找到的图书馆。您可以导入一个示例应用程序。如果是,基本上取下样品模块。库模块足以供您使用。另一种删除android的方法是:从模块中删除主题属性,这会导致错误。如果您从web中找到库,您可以向我发送一个链接,以便我检查您应该如何导入,让我们尝试从arenadeamon清单中删除主题属性?如果有效,您可以将删除的主题属性添加到arena deamon清单中的活动中。因此,基本上,我们将主题声明为一个特定的活动,而不是整个应用程序,这可能与我们的主题冲突。对不起,新手问题,我如何使用此文件降级回购协议?嗨,对不起,新手问题,我如何使用此文件降级回购协议?