自定义属性无法在样式和主题内解析

时间:2019-07-19 15:11:07

标签: android gradle android-theme android-styles android-attributes

我有2-3年前开发的具有自定义主题的android应用程序。 我的attr.xml资源文件中有这个样式:

<declare-styleable name="EVETextViewPlus">
    <attr name="customFont" format="string" />
    <attr name="pageStripFont" format="string" />
</declare-styleable>

我已经在style_warm.xml资源文件中使用了它:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
    <style name="style_display_page_title_warm">
        <item name="my.app.package.:pageStripFont">fonts/b_titr.ttf</item>
        <item name="android:textSize">25dp</item>
        <item name="android:textColor">@color/colorDisplayPageTitle</item>
    </style>
....

当我要对我的应用进行签名时,它会检查错误并提示:

  

无法解析符号“ my.app.package:pageStripFont”

我应该提到my.app.package是清单中定义的应用程序的程序包名称。

这是直到2年前都可以使用的代码,当我将应用程序迁移到最新的android SDK工具Gradle和androidX时,此错误最终出现了,我不知道怎么了。

我确实看到了这个answerthis one,但是我找不到问题。

我还检查了thisthis,它们看起来更加真实,但我不知道如何解决该错误。

1 个答案:

答案 0 :(得分:3)

替换此

<item name="my.app.package.:pageStripFont">fonts/b_titr.ttf</item>

与此

<item name="pageStripFont">fonts/b_titr.ttf</item>