• CanVas类(绘图类)


    知识点:

    Canvas():创建一个空的画布,可以使用setBitmap()方法来设置具体的画布

    Canvas(Bitmap bitmap):bitmap对象创建一个画布,则将内容都绘制在Bitmap上,因此bitmap不能为Null

    Canvas(GL gl):在绘制3D效果时使用,与OpenGL相关

    drawColor:设置背景颜色

    setBitmap:设置画布

    clipRect:设置显示区域,即设置裁剪部分

    isOpaque:是否支持透明度

    rotate:旋转画布

    setViewport:设置画布中显示窗口

    skew:设置偏移量

     

     

    代码示例:

    package com.example.examples_05_04;

     

    import android.content.Context;

    import android.graphics.Canvas;

    import android.graphics.Color;

    import android.graphics.Paint;

    import android.graphics.Rect;

    import android.view.View;

     

    public class GameView extends View implements Runnable {

     

    private Paint m_paint;//声明一只画笔

    public GameView(Context context) {

    super(context);

    // TODO Auto-generated constructor stub

    m_paint=new Paint();//实例化画笔

    new Thread(this).start();//开启线程

    }

     

    public void run() {

    // TODO Auto-generated method stub

     

    while (!Thread.currentThread().isInterrupted()) {

    try {

    Thread.sleep(100);

    catch (Exception e) {

    // TODO: handle exception

    Thread.currentThread().interrupt();

    }

    //更新

    postInvalidate();

    }

    }

     

    public void onDraw(Canvas canvas) {

    super.onDraw(canvas);

    //设置画笔的颜色

    canvas.drawColor(Color.BLACK);

    //取消锯齿效果

    m_paint.setAntiAlias(true);

    //设置裁剪区域

    canvas.clipRect(10, 10, 280, 260);

    //锁定画布

    canvas.save();

    //旋转画布

    canvas.rotate(45.0f);

    //设置颜色和绘制矩形

    m_paint.setColor(Color.RED);

    canvas.drawRect(new Rect(10, 15, 140, 70)m_paint);

    //解除画布锁定

    canvas.restore();

    //设置颜色绘制另一个矩形

    m_paint.setColor(Color.GREEN);

    canvas.drawRect(new Rect(150, 75, 260, 120), m_paint);

    }

     

    }

     

    package com.example.examples_05_04;

     

    import android.os.Bundle;

    import android.app.Activity;

    import android.view.Menu;

     

    public class MainActivity extends Activity {

     

        @Override

        public void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);

            setContentView(new GameView(this));

        }

    }

  • 相关阅读:
    WTM
    Spring Cloud
    Dapper
    Linux 常用命令
    JsonNetResult
    百度 副文本编译器
    GIT使用—一些概念
    GIT使用—创建一个版本库
    GIT使用—安装配置及工作流程
    灰度发布
  • 原文地址:https://www.cnblogs.com/danmao/p/3807229.html
Copyright © 2020-2023  润新知