2

如果我有以下设置:

public class ABCView extends View {
    //implementation here
}

具有以下自定义属性:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name = "ABCView" >
       <attr name="foo" format="boolean"/>
    </declare-styleable>
</resources>

如果我想用另一个视图子类化这个视图,但仍然能够在 XML 中指定自定义属性的值,我该怎么做?

public class DEFView extends ABCView {
    //implementation here
}

但是当我尝试在 XML 中使用子视图时,我收到一个错误 - 它无法识别该属性适用,因为它似乎不知道 java 类之间的关系。我该如何处理?

4

1 回答 1

2

由于 XML 不涉及 java 类层次结构,因此您可能还希望为子子类视图显式指定自定义属性。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name = "DEFView" >
       <attr name="foo" format="boolean"/>
    </declare-styleable>
</resources>
于 2013-01-21T05:54:30.587 回答