IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> android撕衣服应用介绍,android插件化开发指南pdf -> 正文阅读

[移动开发]android撕衣服应用介绍,android插件化开发指南pdf

new_bitmap = Bitmap.createBitmap(width, height, Config.ARGB_8888);//创建一个位图 ARGB_8888 代表32位ARGB位图

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

paint.setAntiAlias(true);//设置画笔的锯齿效果

paint.setDither(true); //防抖动

mCanvas = new Canvas(new_bitmap);//实例化 画布 fore_bitmap类当参数

mCanvas.drawColor(Color.TRANSPARENT);//设置画布颜色为透明

matrix = new Matrix();

//缩放 ?它采用两个浮点数作为参数,分别表示在每个轴上所产生的缩放量。第一个参数是x轴的缩放比例,而第二个参数是y轴的缩放比例。

matrix.setScale(width * 1.0f / fore_bitmap.getWidth(), height * 1.0f / fore_bitmap.getHeight());

mCanvas.drawBitmap(fore_bitmap, matrix, paint);//绘制图像

fore_bitmap.recycle();//回收

paint.setColor(Color.RED);//设置画笔颜色

paint.setStrokeWidth(20);//设置描边宽度

BlurMaskFilter bmf = new BlurMaskFilter(10, BlurMaskFilter.Blur.NORMAL);//指定了一个模糊的样式和半径来处理Paint的边缘。

paint. setMaskFilter(bmf);//为Paint分配边缘效果。

paint.setStyle(Paint.Style.STROKE);//让画出的图形是空心的

paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_OUT));//它的作用是用此画笔后,画笔划过的痕迹就变成透明色了。画笔设置好了后,就可以调用该画笔进行橡皮痕迹的绘制了

paint.setStrokeJoin(Paint.Join.ROUND);//设置结合处的样子 Miter:结合处为锐角, Round:结合处为圆弧:BEVEL:结合处为直线。

paint.setStrokeCap(Paint.Cap.SQUARE);//画笔笔刷类型 ? 方形形状

path = new Path();//实例化画图类

}

protected void onDraw(Canvas canvas) {

super.onDraw(canvas);

canvas.drawBitmap(back_bitmap, matrix, null);//绘制图像

canvas.drawBitmap(new_bitmap, 0, 0, null);//绘制图像

}

public boolean onTouchEvent(MotionEvent event) {

int x = (int) event.getX();//获得触摸的X轴位置

int y = (int) event.getY();//获得触摸的Y轴位置

int position = event.getAction();//获得的返回值 获取触控动作比如ACTION_DOWN

int endX = 0;//声明变量endX

int endY = 0;//声明变量endY

switch (position){

case MotionEvent.ACTION_DOWN://当触摸时按下时

startX = x;

startY = y;

endX = x;

endY = y;

break;

case MotionEvent.ACTION_MOVE://当触摸移动时

endX = x;

endY = y;

break;

case MotionEvent.ACTION_UP://当触摸结束时

endX = x;

endY = y;

break;

}

path.moveTo(startX, startY);//起始点

path.lineTo(endX, endY);//终点

mCanvas.drawPath(path, paint);//绘制图像

postInvalidate();//刷新界面

startX = endX;//将 endX值 也就是停止触摸时X轴的位置 付给 startX当中

startY = endY;//将 endY值 也就是停止触摸时X轴的位置 付给 startY当中

return true;

}

/**

* 用来回收内存

*/

public void realease(){

if(null != back_bitmap && !new_bitmap.isRecycled()){

back_bitmap.recycle();

}
if(null != new_bitmap && !new_bitmap.isRecycled()){

结语

由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!以下是目录截图:

由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。

再附一部分Android架构面试视频讲解:

化的内容!以下是目录截图:**

[外链图片转存中…(img-FAr6qhs4-1643875887945)]

由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。

再附一部分Android架构面试视频讲解:

[外链图片转存中…(img-9CQzoJDD-1643875887946)]

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-02-04 11:08:59  更:2022-02-04 11:09:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 13:54:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码