/*** 作者:guoyzh* 时间:2019/4/12 16:06* 功能:手写画笔*/
public class CustomerPainterView extends View {private Paint mPaint;private Path mPath;private float mLastX;private float mLastY;private Canvas canvas;public CustomerPainterView(Context context) {this(context, (AttributeSet) null);}public CustomerPainterView(Context context, @Nullable AttributeSet attrs) {this(context, attrs, 0);}public CustomerPainterView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);this.initView();}private void initView() {this.mPath = new Path();this.mPaint = new Paint();this.mPaint.setStyle(Paint.Style.STROKE);this.mPaint.setColor(Color.parseColor("#303F9F"));this.mPaint.setStrokeWidth(5.0F);this.mPaint.setAntiAlias(true);// getParent().requestDisallowInterceptTouchEvent(false);}public boolean onTouchEvent(MotionEvent event) {float x = event.getX();float y = event.getY();switch (event.getAction()) {case MotionEvent.ACTION_DOWN:this.mPath.moveTo(x, y);this.mLastX = x;this.mLastY = y;return true;case MotionEvent.ACTION_MOVE:float endX = (this.mLastX + x) / 2.0F;float endY = (this.mLastY + y) / 2.0F;this.mPath.quadTo(this.mLastX, this.mLastY, endX, endY);this.mLastX = x;this.mLastY = y;this.invalidate();case MotionEvent.ACTION_UP:default:return super.onTouchEvent(event);}}protected void onDraw(Canvas canvas) {this.canvas = canvas;canvas.drawPath(this.mPath, this.mPaint);}public void setPenColorRes(@ColorRes int penColorId) {int color = this.getResources().getColor(penColorId);this.mPaint.setColor(color);}public void setPenColor(@ColorInt int penColor) {this.mPaint.setColor(penColor);}public void setPenWidth(float penWidth) {this.mPaint.setStrokeWidth(penWidth);}public void clear() {this.mPath.reset();this.invalidate();}public Bitmap createBitmap() {return BitmapUtil.convertViewToBitmap(this, this.getWidth(), this.getHeight());}/*** 清空当前已绘制内容*/public void clearDrawable() {clear();}
}

Android自定义手绘板 签字板相关推荐

  1. Android自动手绘,Android应用开发之Android 实现手绘功能教程

    本文将带你了解Android应用开发Android 实现手绘功能教程,希望本文对大家学Android有所帮助. 布局文件如下. Activity代码如下,其中线的颜色,宽度等属性都可以修改. pack ...

  2. Android自动手绘,Android实现手绘功能

    本文实例为大家分享了android实现手绘功能的具体代码,供大家参考,具体内容如下 布局文件如下 xmlns:app="http://schemas.android.com/apk/res- ...

  3. 景区自定义手绘地图叠加

    地图上嵌套手绘地图--实现效果: 这里用到了地图的图层 简单一个完整Demo代码 <!DOCTYPE html> <html lang="en"><h ...

  4. Android View与SurfaceView的手绘板制作

    最近学习了如何使用View与SurfaceView制作简单的手绘板,在此做个小结. 自定义VIew实现手绘板: 首先是使用View来实现手绘板: package com.app.superxlcr.m ...

  5. 安卓开发-手绘板自定义绘画的保存,清空与恢复

    写这篇文章是因为代码中刚实现过这些功能,害怕自己之后会忘记,所以把整个方法写出来,方便自己日后复习用. 还是老样子,先上图: 1.首页 2.点击手绘板图片后跳出的窗口 3.用手指进行绘制 4.点击保存 ...

  6. 同步手绘板——项目开发计划

    背景: 用户在使用PC电脑进行手绘创作时,普通的鼠标,键盘等输入设备往往不能满足手绘需要的灵活以及精细控制的需求,而移动设备(手机或平板)的输入方式是直接用手指或触摸笔在触摸屏幕上手绘,正好可以满足手 ...

  7. 电脑画画软件_手绘、板绘、还有用pad画画都有啥区别?

    萝卜青菜,各有所爱.所以这个选择-- [手绘(指不用电子产品的一切绘画方式)] 优点:真实可感,纸张带来的轻微摩擦.晕染等触感,都是板绘无法取代. 在电子时代来临之前,大家用于创作的手法非常非常多元, ...

  8. java画图颜色_手绘板,多种颜色选择。我抄的《疯狂java讲义》的,包我乱导的,但代码能用。...

    [java]代码库import javax.swing.*; import java.awt.image.*; import java.awt.datatransfer.*; import javax ...

  9. 什么是数位板? 数位板,又名绘图板、绘画板、手绘板等等,是计算机输入设备的一种,通常是由一块板子和一支压感笔组成,它和手写板等作为非常规的输入产品相类似,都针对一定的使用群体。 与手写板所不同的是

    什么是数位板? 数位板,又名绘图板.绘画板.手绘板等等,是计算机输入设备的一种,通常是由一块板子和一支压感笔组成,它和手写板等作为非常规的输入产品相类似,都针对一定的使用群体. 与手写板所不同的是,数 ...

最新文章

  1. 父亲节遇上端午节,你难道不回家吗?
  2. 学习进度条(第一周)
  3. 批量计算多个点到一个点的距离
  4. python如何顺序执行多个文件/程序?
  5. 新建和发布Windows服务的几个常见问题
  6. excel二极管伏安特性曲线_【刘敏蔷老师】半导体二极管的原理及应用
  7. java jbutton 不显示_java – JButton中的图像未显示
  8. 带你掌握Redis数据类型:string和Hash
  9. android 不同项目代码合并在一块,android - 是否可以将两个(正在积极开发中的)Android应用程序模块合并到同一个Android Studio项目中? - 堆栈内存溢出...
  10. js判断数组中重复元素并找出_javascript查找数组中重复元素的方法
  11. PyInstaller打包成exe可执行文件
  12. dgvHelper,xmlHelper,inputbox(仿vba),Evaluate(vba中函数应用于C#)
  13. python统计pdf下载_python科学计算 第二版
  14. 机器学习-----车标识别
  15. mvvm框架 android,mvvm框架原理 android 怎么使用mvvm框架
  16. 基于SRS的视频直播服务器搭建
  17. 寒武纪裁员:软件研发部门和应届生为重灾区
  18. 联想服务器开机滴一下不显示,电脑开机没有滴的一声显示器不亮怎么办 电脑开机故障解决方法【图文】...
  19. 【雅思大作文考官范文】——第三篇:essay 'skeleton'(散文“骨架”)
  20. 常见的Transforms的使用方法

热门文章

  1. 解决TrackPopupMenu显示菜单不全的问题
  2. 【数据结构】判断两棵树是否相等的算法
  3. 如何解决 MapReduce 数据倾斜的问题?
  4. 【Unity】【ARPG开发日志】【二】【05】骨骼变形(octopus现象)的原因及修改技巧
  5. Nokia同意放人 移交125名Qt核心成员给Digia
  6. 网络IO和磁盘IO延时
  7. 将PDF转换为高分辨率图像
  8. [DA45] 使用PageRank算法分析希拉里邮件中的人物关系
  9. 用Python做多曲线对比图,----论文map,精度,损失一图多曲线对比
  10. python excel 打印文档_教你如何用Python轻轻松松操作Excel、Word、CSV,一文就够了,赶紧码住!!!...