【问题标题】:Custom Attribute Error - Android Studio 1.2自定义属性错误 - Android Studio 1.2
【发布时间】:2015-05-04 20:04:21
【问题描述】:

在我的 Android 项目中,我有几个使用自定义属性的自定义组件。

attrs.xml 文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<resources >
    <declare-styleable name = "TextBox">
        <attr name = "font" format = "string"/>
    </declare-styleable>

    <declare-styleable name = "ButtonBox">
        <attr name = "font" format = "string"/>
    </declare-styleable>
</resources>

我在自定义组件中提取属性很好,但是当我运行代码时,我看到以下错误。

错误:多次找到项目属性/字体
错误:任务 ':app:mergeDebugResources' 执行失败。

在两个不同的可声明样式资源中存在相似的属性名称应该没有区别吗?

如果您有任何帮助,将不胜感激,谢谢!

【问题讨论】:

标签: android android-studio custom-component attr


【解决方案1】:

here 所见,attr 本身可以有多个属性,并且只能定义一次,您可以在其中配置多个详细信息。 所以你应该给它不同的名字,或者因为它们具有相同的属性,所以两者都只使用一个declare-styable

也请查看this link,有一个很好的例子。

应该是这样的:

<?xml version="1.0" encoding="utf-8"?>
<resources >
    <declare-styleable name="Box">
        <attr name="font" format="string"/>
    </declare-styleable>
</resources>

您可以在文本、按钮等上使用Box

【讨论】:

  • 哦,是的,我想我可以让他们使用同一个,我没有想过要让 declare-styleable 成为除关联之外的任何名称。这些链接非常有帮助,谢谢。
猜你喜欢
  • 2015-09-19
  • 1970-01-01
  • 1970-01-01
  • 2013-09-15
  • 2016-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多