获取标准布局属性

时间:2014-03-24 15:14:46

标签: android xml layout parameters

我扩展了ImageView类并添加了一些自定义参数。我使用方法Context.getTheme().obtainStyledAttributes()成功从我的代码中获取这些自定义参数。

我需要的是访问ImageView对象的标准参数,例如android:srcandroid:background。我知道它存在类android.R.styleable。*,我可以使用它来获取这些参数,但该类已被弃用(并且不再可见)。我该怎么做才能访问这些android参数?

1 个答案:

答案 0 :(得分:-1)

虽然我不确定如何从TypedArray中提取父值,但您可以使用适当的getter访问它们,例如:

public class MyImageView extends ImageView {

    public MyImageView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);

        final TypedArray array = getContext().obtainStyledAttributes(attrs, R.styleable.whatever);
        try {
            // get custom attributes here
        } finally {
            array.recycle();
        }

        // parent attributes
        final Drawable background = getBackground();
        final Drawable src = getDrawable();

        // etc.
    }

}

它并不完全是您正在寻找的东西,但它可能有所帮助。