访问窗口小部件的内部属性

时间:2015-02-09 13:36:29

标签: android android-layout

我知道在创建自定义小部件时,我可以在小部件上访问自定义属性:

 TypedArray a = context.getTheme().obtainStyledAttributes(
                attributeSet,
                R.styleable.FormEditText,
                0, 0);
        try {
            leftIcon = a.getDrawable(R.styleable.FormEditText_leftIcon);
        } finally {
            a.recycle();
        }

但是,如果我想访问android:hint,在创建新的自定义视图时如何引用它?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果要访问自定义视图中的现有android:hint属性,只需创建一个新的样式并引用现有的android atrribute:

attrs.xml:

<declare-styleable name="YourView">
    <attr name="android:hint" />
</declare-styleable>

在customViews初始化中,您可以像这样获取此属性:

TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.YourView);
CharSequence hint = a.getText(R.styleable.YourView_android_hint)
a.recycle();