public SimpleScroller(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); final TypedArray attributes = context.obtainStyledAttributes(attrs, R.styleable.SimpleScroller, defStyleAttr, 0); try { mHandedness = Handedness.values()[attributes.getInt(R.styleable.SimpleScroller_handedness, 0)]; mArrowHeight = attributes.getDimension(R.styleable.SimpleScroller_arrowHeight, 25f); mTicWidth = attributes.getDimension(R.styleable.SimpleScroller_ticWidth, 16f); mTextHorizontalMargin = attributes.getDimension(R.styleable.SimpleScroller_textHorizontalMargin, 23f); mTextVerticalMargin = attributes.getDimension(R.styleable.SimpleScroller_textVerticalMargin, 10f); mStrokeColor = new Paint(); mStrokeColor.setAntiAlias(true); mStrokeColor.setStyle(Paint.Style.STROKE); mStrokeColor.setTextAlign( mHandedness == Handedness.LEFT ? Paint.Align.RIGHT : Paint.Align.LEFT); mStrokeColor.setStrokeWidth(DEFAULT_STROKE_WIDTH); mStrokeColor.setColor( attributes.getColor(R.styleable.SimpleScroller_strokeColor, Color.WHITE)); mStrokeColor.setTextSize( attributes.getDimension(R.styleable.SimpleScroller_android_textSize, 25f)); mArrowStrokeColor = new Paint(); mArrowStrokeColor.setAntiAlias(true); mArrowStrokeColor.setStyle(Paint.Style.STROKE); mArrowStrokeColor.setStrokeWidth(DEFAULT_STROKE_WIDTH); mArrowStrokeColor.setColor( attributes.getColor(R.styleable.SimpleScroller_arrowStrokeColor, Color.WHITE)); mArrowBgColor = new Paint(); mArrowBgColor.setAntiAlias(true); mArrowBgColor.setStyle(Paint.Style.FILL); mArrowBgColor.setColor( attributes.getColor(R.styleable.SimpleScroller_arrowBgColor, Color.BLACK)); mScrollTo = attributes.getFloat(R.styleable.SimpleScroller_scrollTo, 0); mScrollToRange = attributes.getFloat(R.styleable.SimpleScroller_scrollToRange, 26f); } finally { attributes.recycle(); } }
public void setHandedness(int handednessIndex) { mHandedness = Handedness.values()[handednessIndex]; mStrokeColor.setTextAlign( mHandedness == Handedness.LEFT ? Paint.Align.RIGHT : Paint.Align.LEFT); invalidate(); }