<declare-styleable name="mViewGroup"></declare-styleable>
此处的name(就是您定义自定义属性的xml文件),应该与您定义的控件类名保持一致,不然无法正常识别。
对于控件的构造方法,尽量用本地的去调用三个参数的方法,保证程序有一个统一的流向。`
`
public mViewGroup(Context context) {
this(context, null);
}
public mViewGroup(Context context, @Nullable AttributeSet attrs) {
this(context, attrs,0);
}
public mViewGroup(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.mViewGroup);
HorV= a.getBoolean(R.styleable.mViewGroup_viewGroup_HorV,true);//默认为水平
a.recycle();
}
然后在最后一个函数里获取自定义属性,记得一定要 a.recycle();