背景 Flutter中我使用的是这个Lottie组件[https://github.com/xvrh/lottie-flutter]我在做一个点赞的动画的时候,就是很简单的将...

背景 Flutter中我使用的是这个Lottie组件[https://github.com/xvrh/lottie-flutter]我在做一个点赞的动画的时候,就是很简单的将...
随着各大厂商对android11的升级推送,现在已经有了一定android11的机型,关于android11的适配网上有很多相关的文章这里主要强调下android11的分区存...
最近花了大量的时间复习准备面试。杭州的一二线公司基本上都去面试过了,包括阿里,字节,快手,滴滴,有赞,涂鸦,哈啰(腾讯没有客户端的hc),其中也拿了几个不错的offer。这里...
简述 HashMap是一种比较常见的map子类,是由数组+链表组成(JDK8以后采用的是数组+链表+红黑树的形式)。元素是以键值对的形式存在,并且允许使用null作为键和值存...
DialogFragment这个控件作为一个Android开发者来说,应该都是再熟悉不过的了。不过在showDialogFragment发的时候经常会碰到下面这个crash:...
之前我们讲了Surface的创建过程和SurfaceView的"挖洞"过程)。这一篇我们就开始讲讲SurfaceView的完整绘制流程 前面也有说过,虽然SurfaceVie...
红黑树其实就是一种自平衡的二叉查找树,因此在了解红黑树之前,先来看下二叉查找树的原理 1. 二叉查找树 那么何为二叉查找树呢?其实是将二分查找的思想给结合到树的结构中来,二叉...
前言 一个窗口里面的所有的普通View都会共享一个Surface,这个Surface保存在ViewRootImpl里面。但是SurfaceView不同,SurfaceView...
上一篇文章讲了SurfaceView创建Surface的过程,接下来我们来看下SurfaceView是如何"挖洞"的。说起"挖洞",本质上其实就是设置一块区域,在最后绘制的时...
JVM运行时数据区: 虚拟机栈虚拟机栈包含了局部变量表,操作数栈,动态链接,方法出口等。每个方法从执行到完成就是一个栈帧入栈到出栈的过程,出栈以后会返回一条字节指令的地址( ...
前言 Glide 这个三方库使用起来非常简单Glide.with(this).load("").into(imageView)。便可以将资源图片加载到对应的控件上面而且 Gl...
背景 前段时间公司测试给我提了一个bug:在日期选择框弹出来的时候,显示出了未来1个月的日期,如下所示: 需求是说用户无法选择今天以后的日期,所以要将未来的日期给隐藏掉。 探...
一.工具介绍 1.V1和V2签名的区别 2.zipalign和V2签名 二.签名步骤 1.生成密钥对(已有密钥库,可忽略) 2.签名 3.签名验证 简书: http://ww...
一 新建library 二配置gradle 引入bintray-release 在项目的根目录的build.gradle添加bintray-release的classpath...
看到标题我想大部分人会觉得我是标题党,怎么可能在子线程里面修改UI。先别急,慢慢往下看: 举例 首先我们来看个例子: 上述代码就是新开了一个线程,然后在子线程里面给TextV...
前言 某天早晨,吃完早餐,坐回工位,打开电脑,开启chrome,进入友盟页面,发现了一个崩溃信息: 一眼看上去似乎是比较常见的子线程修改UI的问题。并且是在Toast上面报出...