Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在xml布局文件中使用自定义内联属性自定义视图样式_Android_Xml_Android Layout_Android Appcompat - Fatal编程技术网

Android 如何在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"> <!

自从升级Android支持库以来,我一直在为按钮、文本视图和其他视图设置自定义颜色。显然,内联属性被应用程序主题中定义的值覆盖

我在values/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>
        <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清单中的活动中。因此,基本上,我们将主题声明为一个特定的活动,而不是整个应用程序,这可能与我们的主题冲突。对不起,新手问题,我如何使用此文件降级回购协议?嗨,对不起,新手问题,我如何使用此文件降级回购协议?