自定义View一:自定义属性使用

2018-01-15  本文已影响7人  橘子树上结西瓜

自定义属性使用

1.自定义View里面

public MyCircleView(Context context, @Nullable AttributeSet attrs) {
    this(context, attrs,0);//attrs是使用自定义属性,这里用this关键字调用当前类的构造方法
    init();
}

public MyCircleView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
    super(context, attrs, defStyleAttr);
    ALog.d("颜色1:" + mColor);
    //使用自定义属性(如:颜色)
    TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.MyCircleView);
    mColor = a.getColor(R.styleable.MyCircleView_circle_color, Color.BLUE);
    ALog.d("颜色2:" + mColor);
    a.recycle();
    init();
}

/**
 * 设置画笔颜色
 */
private void init() {
    mPaint.setColor(mColor);
}

2.自定义属性

在values目录下面创建自定义属性的XML:attrs.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="MyCircleView">
        <attr name="circle_color" format="color"/>
    </declare-styleable>
</resources>

3.布局中使用
(1)最外层布局:xmlns:app="http://schemas.android.com/apk/res-auto"

(2)自定义View里:app:circle_color="@color/pink"

自定义下拉刷新控件

上一篇下一篇

猜你喜欢

热点阅读