Android自定义复合视图,如何重用属性?
您好,我创建了这个复合视图,它包含一个文本视图(用于显示错误或建议)和一个编辑文本(用于输入) 我的问题是如何使用已经存在的属性?我不想重新创建它们 请帮助我,谢谢你的阅读 编辑1Android自定义复合视图,如何重用属性?,android,Android,您好,我创建了这个复合视图,它包含一个文本视图(用于显示错误或建议)和一个编辑文本(用于输入) 我的问题是如何使用已经存在的属性?我不想重新创建它们 请帮助我,谢谢你的阅读 编辑1 我的复合视图扩展了线性布局我猜你说的是自定义视图 但是,您应该在attrs.xml中声明styleable,并像这样使用它: <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name=
我的复合视图扩展了线性布局我猜你说的是
自定义视图
但是,您应该在attrs.xml
中声明styleable,并像这样使用它:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="ValidationInputField">
<attr name="android:hint"/>
<attr name="android:inputType"/>
</declare-styleable>
</resources>
if(attrs != null){
TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.ValidationInputField);
String hint = a.getString(R.styleable.ValidationInputField_android_hint);
int inputType = a.getInt(R.styleable.ValidationInputField_android_inputType,0);
// set these two values in your EditText programmatically
EditText editText = (EditText) findViewById(R.id.inputField);
editText.setHint(hint);
editText.setInputType(inputType);
a.recycle();
}
if(attrs != null){
TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.???);
a.recycle();
}
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="ValidationInputField">
<attr name="android:hint"/>
<attr name="android:inputType"/>
</declare-styleable>
</resources>
if(attrs != null){
TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.ValidationInputField);
String hint = a.getString(R.styleable.ValidationInputField_android_hint);
int inputType = a.getInt(R.styleable.ValidationInputField_android_inputType,0);
// set these two values in your EditText programmatically
EditText editText = (EditText) findViewById(R.id.inputField);
editText.setHint(hint);
editText.setInputType(inputType);
a.recycle();
}