Code example for Drawable

Methods: drawgetPaddingsetBounds

0
		int switchLeft = mSwitchLeft;
		int switchTop = mSwitchTop;
		int switchRight = mSwitchRight;
		int switchBottom = mSwitchBottom;
 
		mTrackDrawable.setBounds(switchLeft, switchTop, switchRight, switchBottom);
		mTrackDrawable.draw(canvas);
 
		canvas.save();
 
		mTrackDrawable.getPadding(mTempRect);
		int switchInnerLeft = switchLeft + mTempRect.left;
		int switchInnerTop = switchTop + mTempRect.top;
		int switchInnerRight = switchRight - mTempRect.right;
		int switchInnerBottom = switchBottom - mTempRect.bottom;
		canvas.clipRect(switchInnerLeft, switchTop, switchInnerRight, switchBottom);
 
		mThumbDrawable.getPadding(mTempRect);
		final int thumbPos = (int) (mThumbPosition + 0.5f);
		int thumbLeft = switchInnerLeft - mTempRect.left + thumbPos;
		int thumbRight = switchInnerLeft + thumbPos + mThumbWidth + mTempRect.right;
 
		mThumbDrawable.setBounds(thumbLeft, switchTop, thumbRight, switchBottom);
		mThumbDrawable.draw(canvas);
 
		// mTextColors should not be null, but just in case 
		if (mTextColors != null)
		{ 
			mTextPaint.setColor(mTextColors.getColorForState(getDrawableState(), mTextColors.getDefaultColor()));
		} 
		mTextPaint.drawableState = getDrawableState();
 
		Layout switchText = getTargetCheckedState() ? mOnLayout : mOffLayout;
		if (switchText != null)
		{ 
			canvas.translate((thumbLeft + thumbRight) / 2 - switchText.getWidth() / 2, (switchInnerTop + switchInnerBottom) / 2 - switchText.getHeight() / 2);
			switchText.draw(canvas);
		} 
 
		canvas.restore();
	} 
 
	@Override 
	public int getCompoundPaddingRight() 
	{ 
		int padding = super.getCompoundPaddingRight() + mSwitchWidth;
		if (!TextUtils.isEmpty(getText()))
		{ 
			padding += mSwitchPadding;
		} 
		return padding;
	} 
 
	private int getThumbScrollRange() 
	{ 
		if (mTrackDrawable == null)
		{ 
			return 0; 
		} 
		mTrackDrawable.getPadding(mTempRect);
		return mSwitchWidth - mThumbWidth - mTempRect.left - mTempRect.right;
	} 
 
	@Override 
	protected int[] onCreateDrawableState(int extraSpace)
Contextual code suggestions in your IDE  Get Codota for Java