github android涂鸦,GitHub - CPPAlien/AndroidDoodle: 打造最简洁好用的 Android 涂鸦库

2024-01-27 13:10

本文主要是介绍github android涂鸦,GitHub - CPPAlien/AndroidDoodle: 打造最简洁好用的 Android 涂鸦库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AndroidDoodle

致力打造最简洁好用的 Android 涂鸦开源库。

Demo

687474703a2f2f63646e2e666c6f776572676f2e78797a2f646f6f646c652e676966

import

dependencies {

compile 'com.qunhe.android:doodle:1.0.0'

}

添加绘图层

android:id="@+id/content"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

注意添加到图片之上,自己有效按钮之下

监听

可以对 SketchBoardLayout 中的 setOnSketchBoardListener 来监听一些操作行为。

public interface OnSketchBoardListener {

/**

* is any sketch selected

*

* @param isSelected is selected

*/

void onSketchSelected(boolean isSelected);

/**

* when text sketch clicked

*

* @param text text

* @param color color

*/

void onTextSketchClicked(String text, int color);

}

画线

// 切换为画线模式

setSketchType(SketchBoardLayout.LINE_SKETCH);

// 设置颜色和粗细,切换只需要一次,以后直接设置颜色和粗细就行

setLineSketchPaint(int color, float strokeWidth)

文字

// 加入文字层

addTextSketch(String text, int color);

//重置已有文字层,只重置最上层的文字层,如果最上层非文字层,则无效

resetTextSketch(String text, int color);

当文字层被点击后,点击后,该文字层就会被添加到最上层

void onTextSketchClicked(String text, int color);

图片

addImageSketch(Bitmap bitmap)

undo

undo()

delete

delete()

// 删除最上层的sketch,因为只有点选的sketch才可以删除,而点选后会到最上层

可以通过onSketchSelected监听判断当前是否有选中的sketch,如果无选中的,则无法删除,可以用此方法来判断删除按钮的可点状态。

frozen

Bitmap frozen(Bitmap)

当最后需要倒出图片时,可以把原图的 Bitmap 传入该函数,然后获得一个新的 bitmap,该 bitmap 即为包含所有涂鸦的图片。

这篇关于github android涂鸦,GitHub - CPPAlien/AndroidDoodle: 打造最简洁好用的 Android 涂鸦库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/650342

相关文章

无线路由器哪个品牌好用信号强? 口碑最好的三个路由器大比拼

《无线路由器哪个品牌好用信号强?口碑最好的三个路由器大比拼》不同品牌在信号覆盖、稳定性和易用性等方面各有特色,如何在众多选择中找到最适合自己的那款无线路由器呢?今天推荐三款路由器让你的网速起飞... 今天我们来聊聊那些让网速飞起来的路由器。在这个信息爆炸的时代,一个好路由器简直就是家庭网编程络的心脏。无论你

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

轻松掌握python的dataclass让你的代码更简洁优雅

《轻松掌握python的dataclass让你的代码更简洁优雅》本文总结了几个我在使用Python的dataclass时常用的技巧,dataclass装饰器可以帮助我们简化数据类的定义过程,包括设置默... 目录1. 传统的类定义方式2. dataclass装饰器定义类2.1. 默认值2.2. 隐藏敏感信息

Android WebView的加载超时处理方案

《AndroidWebView的加载超时处理方案》在Android开发中,WebView是一个常用的组件,用于在应用中嵌入网页,然而,当网络状况不佳或页面加载过慢时,用户可能会遇到加载超时的问题,本... 目录引言一、WebView加载超时的原因二、加载超时处理方案1. 使用Handler和Timer进行超

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

无线领夹麦克风什么牌子好用?揭秘领夹麦克风哪个牌子音质好!

随着短视频行业的星期,围绕着直播和视频拍摄的电子数码类产品也迎来了热销不减的高增长,其中除了数码相机外,最为重要的麦克风也得到了日益增长的高需求,尤其是无线领夹麦克风,近几年可谓是异常火爆。别看小小的一对无线麦克风,它对于视频拍摄的音质起到了极为关键的作用。 不过目前市面上的麦克风品牌种类多到让人眼花缭乱,盲目挑选的话容易踩雷,那么无线领夹麦克风什么牌子好用?今天就给大家推荐几款音质好的

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

android-opencv-jni

//------------------start opencv--------------------@Override public void onResume(){ super.onResume(); //通过OpenCV引擎服务加载并初始化OpenCV类库,所谓OpenCV引擎服务即是 //OpenCV_2.4.3.2_Manager_2.4_*.apk程序包,存

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip