当前位置: 首页 > news >正文

Android : 画布的使用 简单应用

示例图:

MyView.java:

package com.example.demo;import android.content.Context;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;import com.example.myoomtest.R;public class MyView extends View {public MyView(Context context) {super(context);}@Overrideprotected void onDraw(Canvas canvas) {
//        super.onDraw(canvas);//画笔Paint paint = new Paint();paint.setColor(Color.RED);//设置画笔的风格,如 Style.FILL(实心)、// Style.FILL_AND_STROKE(同时显示实心和空心)或 Style.STROKE(空心)。paint.setStyle(Paint.Style.FILL);//设置空心 边框 宽度paint.setStrokeWidth(20.0f);//在画布上画条线/**** xxxxxxY 000000Y 000000Y 000000* */canvas.drawLine(0,50,500,50,paint);//画一条直线canvas.drawLine(100,0,100,200,paint);//画一条竖线canvas.drawLine(300,0,600,200,paint);//画一条斜线Paint paint2 = new Paint();paint2.setStyle(Paint.Style.STROKE);//(空心)paint2.setStrokeWidth(10);//边框大小paint2.setARGB(100,120,255,100);/*** 画矩形 rect* */canvas.drawRect(100,300,300,500,paint2);Paint paint3 = new Paint();paint3.setStyle(Paint.Style.STROKE);//(空心)paint3.setStrokeWidth(10);//边框线大小paint3.setARGB(100,120,255,100);/*** x , y  位置* 圆的 半径* 画圆形 circle* */canvas.drawCircle(600f,600f,60f,paint3);canvas.drawCircle(700f,700f,60f,paint);/**画文字* 基准线* */Paint paint4 = new Paint();paint4.setARGB(100,120,255,0);paint4.setTextSize(200);//文字大小paint4.setStrokeWidth(10);//边框线大小//基准线canvas.drawLine(0,1000,1000,1000,paint4);canvas.drawText("appblmqq",20,1000,paint4);/*** 绘制图片到画布* */Paint paint6 = new Paint();canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.kk),200,1200,paint6);}}

MainActivity.java

public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
//        setContentView(R.layout.activity_main);setContentView(new MyView(this));}}
http://www.lryc.cn/news/268759.html

相关文章:

  • 紫光展锐5G扬帆出海 | 东南亚成为5G新热土
  • STM32 学习(一)新建工程
  • ROBOGUIDE教程:FANUC机器人固定点焊焊接虚拟仿真
  • 代码审计必要性探讨
  • SpringBoot-Shiro
  • 认识Docker
  • uniapp的分包使用记录
  • JSON.stringify()
  • 机器学习——损失函数
  • C#多线程(补充)
  • 关于苹果iOS 16:揭开伪装成飞机模式的隐形蜂窝接入漏洞的动态情报
  • Python+OpenCV 零基础学习笔记(4-5):计算机图形基础+Python相对文件路径+OpenCV图像+OpenCV视频
  • 【C++篇】讲解Vector容器的操作方法
  • 桥接模式-举例
  • FreeBSD下安装Jenkins(软件测试集成工具)记录
  • 数据结构学习 Leetcode474 一和零
  • VS配置PCO相机SDK环境
  • 六、Redis 分布式系统
  • Unity相机跟随角色移动
  • Lua的垃圾回收机制详解
  • java设计模式学习之【解释器模式】
  • Unity中Shader旋转矩阵(四维旋转矩阵)
  • 【大数据】Centos 7安装教程
  • 2024 年 11 款最佳 Android 数据恢复软件应用
  • Redis 核心知识总结
  • Android Jetpack之用Room+ViewModel+LiveData实现增删改查数据(createFromAsset())
  • MySQL ORDER BY(排序) 语句-读取的数据进行排序
  • 【ES】es介绍
  • 07.kubernetes客户端部署
  • laravel5.8中实现验证码组件的安装和验证