Android 画布中的旋转对象
我有这段代码,它可以打印4个矩形,但我希望其中一个可以旋转,这段代码可以处理那些注释行,但是如果我把它们拿出来,它就不会打印矩形4Android 画布中的旋转对象,android,Android,我有这段代码,它可以打印4个矩形,但我希望其中一个可以旋转,这段代码可以处理那些注释行,但是如果我把它们拿出来,它就不会打印矩形4 使用canvas.rotate(5)例如,最可能的情况是您的矩形在旋转后离开屏幕。若要添加,请使用canvas.rotate(度,centerX,centerY),其中centerX/centerY是矩形的中心点,即canvas.rotate(45,rectangle4.centerX(),rectangle4.centerY()) protected voi
使用
canvas.rotate(5)
例如,最可能的情况是您的矩形在旋转后离开屏幕。若要添加,请使用canvas.rotate(度,centerX,centerY)
,其中centerX/centerY是矩形的中心点,即canvas.rotate(45,rectangle4.centerX(),rectangle4.centerY())代码>
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
red_fill = new Paint();
red_fill.setColor(Color.RED);
red_fill.setStyle(Paint.Style.FILL);
rectangle.set((getWidth() / 2 + 150), getHeight() / 2 - 20, (getWidth() / 2) + 170, (getHeight() / 2));
rectangle2.set((getWidth() /2 - 10), getHeight() / 2 - 200, (getWidth()/2) + 10, (getHeight()/2) - 180);
rectangle3.set((getWidth() / 2 - 170), getHeight() / 2 - 20, (getWidth() / 2) - 150, (getHeight() / 2));
rectangle4.set((getWidth() / 2 - 130), getHeight() / 2 - 120, (getWidth() / 2) - 110, (getHeight() / 2) - 100);
canvas.drawRect(rectangle, red_fill);
canvas.drawRect(rectangle2, red_fill);
canvas.drawRect(rectangle3, red_fill);
//canvas.save();
//canvas.rotate(45);
canvas.drawRect(rectangle4, red_fill);
//canvas.restore();
invalidate();
}