Android画板控件,可以写字,签名,画画并生成图片

1效果图

 

实现步骤

1、添加画板控件module

画板控件module下载:https://download.csdn.net/download/meixi_android/10774781

2、xml文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayoutandroid:id="@+id/content_main"xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:background="@color/white"app:layout_behavior="@string/appbar_scrolling_view_behavior"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="8dp"android:layout_marginTop="8dp"android:background="@color/blistlic"></LinearLayout><Buttonandroid:id="@+id/btn_reset"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="40dp"android:layout_margin="10dp"android:text="重置"android:textSize="16dp"android:textColor="#fff"android:background="@drawable/selebuttonbg"/><Buttonandroid:id="@+id/btn_bitmap"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="40dp"android:layout_margin="10dp"android:text="确认"android:textSize="16dp"android:background="@drawable/selebuttonbg"android:textColor="#fff" /><com.unco.library.PainterViewandroid:id="@+id/painter"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@color/defaulcolor"/>
</LinearLayout>

3、activity代码详情

/*** 作者:created by meixi* 邮箱:13164716840@163.com* 日期:2018/11/9 13*/
public class QianmingActivity extends MainBaseFragmentActiciry {@BindView(R.id.backliqianming)LinearLayout backliqianming;@BindView(R.id.btn_reset)Button btn_reset;@BindView(R.id.btn_bitmap)Button btn_bitmap;@BindView(R.id.painter)PainterView painter;private String ss;@Overrideprotected void onCreate(Bundle arg0) {super.onCreate(arg0);setContentView(R.layout.qianmingla);ButterKnife.bind(this);ss = getIntent().getStringExtra("type");painter.clear();}@OnClick({R.id.backliqianming,R.id.btn_reset,R.id.btn_bitmap})public void onClick(View view) {switch (view.getId()) {case R.id.backliqianming:onBackPressed();break;case R.id.btn_reset:painter.clear();break;case R.id.btn_bitmap:Bitmap bitmap = painter.creatBitmap();if (ss.equals("ww")){BObServernotice.getInstance().notifyObserver(1,bitmap);}else if (ss.equals("jj")){BObServernotice.getInstance().notifyObserver(2,bitmap);}onBackPressed();break;}}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/414994.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

工作209:整理订单的重置逻辑

1点击新增 2找到子组件下面的混入 3找到混入 4这一块或许就是重置逻辑

位域操作

看runtime源码时&#xff0c;看到如下声明变量的&#xff0c;变量后分号前加冒号和数字": 数字"即为位域操作。 uintptr_t indexed : 1; 1个字节包含8位&#xff0c;有些变量保存的数据不需要占用这么长的空间&#xff08;比如bool类型&#xff0c;只有两个…

工作211:新的封装组件 秒呀

<!-- 可以动态新增的 tag 列表 --> <template><div><el-tagv-for"(tag, index) in dynamicTags":key"index":closable"true":disable-transitions"false"close"handleClose(tag)">{{ tag }}</el…

HTTP协议简介,数据安全 如何保证http传输安全性,http与https区别

目前大多数网站和app的接口都是采用http协议&#xff0c;但是http协议很容易就通过抓包工具监听到内容&#xff0c;甚至可以篡改内容&#xff0c;为了保证数据不被别人看到和修改&#xff0c;可以通过以下几个方面避免。 重要的数据&#xff0c;要加密&#xff0c;比如用户名密…

mongoose只更新数组中某一项的字段

只是需要一个特殊符号$代表匹配某一项 数据库设计如下&#xff1a; 核心代码如下&#xff1a; // 回答试题public async userPaperAnswer(request: IRequest, _h: IResponse) {const { user_paper_id, question_id, option_user } request.payload;const updOne await Use…

工作213:不能改变父组件值

父组件通过props传值给子组件&#xff0c;如何避免子组件改变props的属性值报错问题 报错Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop’s v…

Android 下拉式抽屉折叠动画

自定义listview工具类1、 public class ViewMeasureUtils {/*** 根据父 View 规则和子 View 的 LayoutParams&#xff0c;计算子类的宽度(width)测量规则** param view*/public static int getChildWidthMeasureSpec(View view, int parentWidthMeasureSpec) {// 获取父 View …

beta冲刺总结

团队成员及分工 姓名学号分工陈家权031502107前端&#xff08;消息模块&#xff09;赖晓连031502118前端&#xff08;问答模块&#xff09;雷晶031502119服务器林巧娜031502125前端&#xff08;首页模块&#xff09;一、项目预期计划及现实进展 项目预期计划现实进展解决页面异…

cesium polygon 悬浮在半空中

效果如下&#xff1a; 代码&#xff1a; let arr [[120.87140893447473, 31.877030830389447, 128.64],[120.87140872335587, 31.876963534304792, 128.64],[120.87202301763111, 31.87696299560446, 128.63],[120.87202432001283, 31.877030271988385, 128.63]]arr [].con…

工作215:点击按钮报错

获取值有点问题 点击同一按钮获取值有问题

phalcon无限重定向

问题 换了个新电脑&#xff0c;后来重新配置phalcon环境。由于用得是windows&#xff0c;而且还用得是2.0.5得版本&#xff0c;官网已经没提供这个版本下载了。而旧电脑已经被格式化了&#xff0c;?。 寻找旧版本 通过一番搜索&#xff0c;发现了一个issue&#xff0c;提到pha…

!KMP算法完整教程

KMP算法完整教程 全称: Knuth_Morris_Pratt Algorithm(KMP算法) 类型: 高级检索算法 功能: 字符串匹配查找 提出者: D.E.Knuth(克努兹),J.H.Morris(莫瑞…

修改git bash主题配色和字体

这win下默认的主题令人窒息 打开git bash&#xff0c;使用命令cd ~然后用Atom命令打开文件.minttyrc.atom .minttyrc如果默认没有.minttyrc文件&#xff0c;自己新创建的也行。里面的内容填写如下&#xff1a;FontConsolas FontHeight14ForegroundColour131,148,150 Background…

jdk和maven配置

Java 1、首先准备一下文件 2、直接安装jdk&#xff0c;我是一直下一步&#xff0c;路径也是默认 3、开始配置环境变量 电脑--属性--高级--环境变量&#xff0c;新建系统变量 JAVA_HOME 和 CLASSPATH变量名&#xff1a;JAVA_HOME变量值&#xff1a;C:\Program Files\Java\…

java 数据结构详解,数组,集合,HashMap

数组的特性&#xff1a; 数组在内存中是一块连续的存储单元存储起来的&#xff0c;声明数组的时候我们必须声明其长度&#xff0c;这样才会为我们声明一个连续的存储区域。 这种存储方式造成我们想要往数组中存储一个数据时那么其后面各个元素都要往后移动&#xff0c;同样的&…

工作218:页面样式调整

<div class"table-list-page"><div class"query-area"><!--样式控制全部 已经退回 待审核GY--><el-row><el-radio-group v-model"query.status" change"list"><el-radio-button label""&g…

前端学习(2681):重读vue电商网站1之后台启动

后台数据接口启动文件 node -app.js 需要mysql数据库

Promise初步详解(resolve,reject,catch)

一:何为Promise&#xff1f; 为了直观一点&#xff0c;首先我们采用console.dir(Promise)看一下它的结构组成。 从上面的图片中我们可以到&#xff0c;Promise其实是一个构造函数&#xff0c;它有resolve&#xff0c;reject&#xff0c;race等静态方法;它的原型&#xff08;pro…