实现背景

不知道你有没有遇到同样的问题,要实现翻书效果,如果你是使用github上的demo或者好多博客上写的方式,你会发现,当api从28开始,会抛出Invalid Region.Op.REPLACE - only INTERSECT and DIFFERENCE are allowed这样的异常

原因是从Android P开始,Canvas.clipPath(@NonNull Path path, @NonNull Region.Op op) ; 已经被废弃,而且是包含异常风险的废弃API,只有 Region.Op.INTERSECT 和 Region.Op.DIFFERENCE 得到兼容

参考了网上好多方法都不行,这里就不过多说了,无奈自己研究吧

效果实现

关键方法

            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {mXORPath.reset();mXORPath.moveTo(0f, 0f);mXORPath.lineTo(canvas.getWidth(), 0f);mXORPath.lineTo(canvas.getWidth(), canvas.getHeight());mXORPath.lineTo(0f, canvas.getHeight());mXORPath.close();// 取 path 的补给,作为 canvas 的交集mXORPath.op(mPath0, Path.Op.XOR);canvas.clipPath(mXORPath);} else {canvas.clipPath(mPath0, Region.Op.XOR);}

源码地址

Android利用贝塞尔曲线实现翻书效果(适配AndroidX)-Android文档类资源-CSDN下载

Android利用贝塞尔曲线实现翻书效果(适配AndroidX)相关推荐

  1. android 辅助功能 翻页,Android利用悬浮按钮实现翻页效果

    今天给大家分享下自己用悬浮按钮点击实现翻页效果的例子. 首先,一个按钮要实现悬浮,就要用到系统顶级窗口相关的WindowManager,WindowManager.LayoutParams.那么在An ...

  2. 如何用css实现左右翻页效果图,如何利用CSS3实现3D翻书效果

    这篇文章主要介绍了CSS3实现3D翻书效果,基于CSS3新属性Animation及transform实现类似翻书效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 先上效果图:(样式有点丑,可以忽 ...

  3. Android App开发手机阅读中实现平滑翻书效果和卷曲翻书动画实战(附源码 简单易懂 可直接使用)

    需要图片集和源码请点赞关注收藏后评论区留言~~~ 一.平滑翻书效果 与纸质书籍类似,手机上的电子书也有很多页,逐页浏览可采用翻页视图,然而翻页视图犹如一幅从左到右的绵长画卷,与现实生活中上下层叠的书籍 ...

  4. 自定义控件android特效,Android自定义控件eBook实现翻书效果实例详解

    本文实例讲述了Android自定义控件eBook实现翻书效果的方法.分享给大家供大家参考,具体如下: 效果图: Book.java文件: package com.book; import androi ...

  5. html5实现3d翻页效果,利用css3 3d transform制作超逼真翻书效果

    本教程给大家带来一个非常有创意的翻书效果,使用的是css 3D transforms属性和css transitions属性.这里将给你展示两种不同的图书设计:精装书和平装书.这两种设计只需要简单的改 ...

  6. Android开发——贝塞尔曲线解析

    相信很多同学都知道"贝塞尔曲线"这个词,我们在很多地方都能经常看到.利用"贝塞尔曲线"可以做出很多好看的UI效果,本篇博客就让我们一起学习"贝塞尔曲线 ...

  7. android贝塞尔曲线实例,android中贝塞尔曲线的应用示例

    前言: 贝塞尔曲线又称贝兹曲线,它的主要意义在于无论是直线或曲线都能在数学上予以描述.最初由保罗·德卡斯特里奥(Paul de Casteljau)于1959年运用德卡斯特里奥演算法开发(de Cas ...

  8. Android中贝塞尔曲线的绘制方法

    贝塞尔曲线,很多人可能不太了解,什么叫做贝塞尔曲线呢?这里先做一下简单介绍:贝塞尔曲线也可以叫做贝济埃曲线或者贝兹曲线,它由线段与节点组成,节点是可拖动的支点,线段像可伸缩的皮筋.一般的矢量图形软件常 ...

  9. settimeout怎么用_怎么实现一个3d翻书效果

    本篇主要讨论以下两种翻书动画的实现: 第一种是整页翻转的效果: 这种整页翻转的效果主要是做rotateY的动画,并结合一些CSS的3d属性实现. 第二种折线翻转的效果,如下图所示: 主要是通过计算页面 ...

最新文章

  1. HGOI20190808 省常中互测1
  2. SpringBoot底层注解-@ConfigurationProperties配置绑定
  3. linux专用的opencv下载链接(持续更新)
  4. 【软件周刊】D语言卷土重来,Vue.js 应获 1024 个赞,小薇可以一键启动了
  5. 二叉排序树查找的c语言程序,C语言二叉排序(搜索)树实例
  6. 程序猿的日常——JVM内存模型与垃圾回收
  7. centos 6.5装mysql 5.7,centos 6.5装mysql5.7
  8. 详解Python科学计算扩展库numpy中的矩阵运算(1)
  9. golang 初始化并赋值_Golang 切片综合指南
  10. nrpe的安装和配置(转)
  11. Nacos高可用集群解决方案-Docker版本
  12. 大数据Hadoop学习记录(4)----基于JAVA的HDFS文件操作
  13. BZOJ4571: [Scoi2016]美味【主席树】【贪心】
  14. 网页中那些遇到过的导航选中状态actived selected
  15. python hist函数_Python pandas.DataFrame.hist函数方法的使用
  16. Rk3399 Android 7.1 使用 git 管理代码之后编译不通过
  17. 搭建IP代理池伪装IP地址
  18. JAVA 入坑教程 | 章节九 详解java的装箱和拆箱
  19. strcmp函数的C语言实现
  20. centos7.2 下 ffmpeg交叉编译(安卓版x86_64)

热门文章

  1. 【C语言】for循环常见问题
  2. --------------------------------------MYSQL批量修改字段类型---------------------------------
  3. zemax模拟ld_使用ZEMAX 序列模式模拟激光二极管光源
  4. Java 8 流过滤List
  5. Android版本与Linux内核版本的关系
  6. js正则表达式之 (?=) (?!)
  7. 5分钟理解Focal Loss与GHM
  8. excel单元格斜杠拆分上下打字
  9. .net6API使用AutoMapper和DTO
  10. shell向文件末尾添加内容