如何在函数中设置属性集



我有以下代码。

public LabelView(Context context, AttributeSet attrs) {
    super(context, attrs);
    initLabelView();

如何设置属性集的值并从其他活动将其传递给构造函数。

如果您直接使用 AttributeSet,则需要手动检查资源引用(使用 getAttributeResourceValue(int,int)),并在需要时自己进行资源查找。直接使用 AttributeSet 还可以防止在检索属性值时应用主题和样式。

而不是尝试修改构造函数中的属性集。最好的办法是简单地覆盖我要更改的属性的值。这可能还需要重写或重新实现使用该属性的父级(LabelView 或 View)中的受保护/公共方法。

最新更新