irpas技术客

Android Canvas.translate平移_YK

未知 2588

Android30

Canvas.translate方法 public voidtranslate(float dx, float dy) { if (dx == 0.0f && dy == 0.0f) return; nTranslate(mNativeCanvasWrapper, dx, dy); }

演示 import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.util.AttributeSet; import android.view.View; import androidx.annotation.Nullable; public class MyView extends View { public MyView(Context context) { super(context); } public MyView(Context context, @Nullable AttributeSet attrs) { super(context, attrs); } public MyView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); canvas.drawColor(Color.GRAY); Paint mPaint = new Paint(); mPaint.setColor(Color.GREEN); canvas.drawRect(0, 0, 300, 300, mPaint); // 第一次平移 canvas.translate(200, 200); mPaint.setColor(Color.BLUE); canvas.drawRect(0, 0, 300, 300, mPaint); // 第二次平移 canvas.translate(200, 200); mPaint.setColor(Color.RED); canvas.drawRect(0, 0, 300, 300, mPaint); } }

代码

示例代码:地址

参考文档

Android Developers 中描述的 Canvas.translate方法,参考文档:地址


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #Android #Canvastranslate