@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if (mChecked) {
Rect rect1 = getRect(canvas);
Paint paint = new Paint();
paint.setColor(0x55FFFFFF);
paint.setStyle(Paint.Style.FILL);
canvas.drawRect(rect1, paint);
}
}
Rect getRect(Canvas canvas) {
Rect rect = canvas.getClipBounds();
rect.bottom -= getPaddingBottom();
rect.right -= getPaddingRight();
rect.left += getPaddingLeft();
rect.top += getPaddingTop();
return rect;
}
本文详细介绍了如何在Android应用中自定义视图的绘制过程,并通过获取Canvas的裁剪区域来实现边界调整功能,确保视图在不同布局和尺寸下都能正确显示。
452

被折叠的 条评论
为什么被折叠?



