public ToggleDrawable(Context context, @AttrRes int defStyleAttr, @StyleRes int defStyleRes) {
final TypedArray typedArray = context.getTheme()
.obtainStyledAttributes(null, R.styleable.ToggleDrawable,
defStyleAttr, defStyleRes);
mPaint.setAntiAlias(true);
mPaint.setColor(typedArray.getColor(R.styleable.ToggleDrawable_td_color, 0));
mSize = typedArray.getDimensionPixelSize(R.styleable.ToggleDrawable_td_drawableSize, 0);
mStrokeWidth = typedArray.getDimension(R.styleable.ToggleDrawable_td_stroke, 0);
mSpin = typedArray.getBoolean(R.styleable.ToggleDrawable_td_spin, true);
typedArray.recycle();
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setStrokeJoin(Paint.Join.MITER);
mPaint.setStrokeCap(Paint.Cap.BUTT);
mPaint.setStrokeWidth(mStrokeWidth);
updateTintFilter();
}