1. 源码分析目标 上一篇文章[//www.greatytc.com/p/44ba6d266a37]中对 View 事件分发的规律进行了总结,总结了 View 事件...
1. 源码分析目标 上一篇文章[//www.greatytc.com/p/44ba6d266a37]中对 View 事件分发的规律进行了总结,总结了 View 事件...
1. BottomSheet 底部弹窗是一个很常见的一个功能,取消确认面板、分享面板、评论面板等,都是底部弹出的场景,那么想实现这样一个面板,应该怎么思考去设计一个面板满足需...
对于卡顿分析,首先需要明确分析的因素,即影响卡顿有哪些点,是 CPU 繁忙,线程锁资源导致的阻塞,IO 耗时操作,还是内存吃紧等,然后再收集卡顿时相关信息,当前设备信息,当前...
1.Android 常见数据存储方式 在 Android 中,常用数据存储方式通常有以下几类: 文件存储:将数据存储在文件中。文件存储根据位置不同,可以存储在应用包下,成为内...
在Android开发中,事件分发机制是一块Android比较重要的知识体系,了解并熟悉整套的分发机制有助于更好的分析各种点击滑动失效问题,更好去扩展控件的事件功能和开发自定义...
1.ANR 1.1 什么是 ANR? 我们知道安卓应用中 UI 渲染是在主线程中,所以对于一些点击事件,以及和用户交互相关的事件需要能够及时,否则对于用户来说就是一个很不好的...
1. RxJava 内存泄漏原因 Disposable 基本原理: (1)这里仅看下 Observer 的执行,如在主线程执行 Observer,会走 Observable ...
1.Java垃圾回收(GC) Java 是如何管理内存为了判断Java中是否有内存泄露,我们首先必须了解Java是如何管理内存的。Java的内存管理就是对象的分配和释放问题。...
Dagger2 1.依赖注入 (Dependency Injection) 1.1 面向接口编程 方式 1 中直接依赖 Bike 类,Worker 依赖具体的实现类,一旦改变...
1.为什么需要 Span? 在文本展示时,如果不需要设置样式,包括颜色,大小,对齐方式等属性时,可以利用 View 的属性来控制,但是很多时候我们希望控制颜色,字体大小,对齐...
1 View 机制简单介绍 UI 渲染还依赖两个核心的硬件:CPU 与 GPU。UI 组件在绘制到屏幕之前,都需要经过 Rasterization(栅格化)操作,而栅格化操作...
什么是内联函数 这个玩意吸取自C++,如下: 内联函数是C++的增强特性之一,用来降低程序的运行时间。当内联函数收到编译器的指示时,即可发生内联:编译器将使用函数的定义体来替...
lambda表达式是什么玩意? 一言蔽之:lambda表达式就是一个匿名函数我们通常这样写匿名函数: 这样写可能有点麻烦,我们使用lambda表达式可以这么写: lambda...
上一篇 事件分发—初体验 文章中实现了一个能够滑动关闭的 Demo,主要来体验一下事件分发,这篇来对 View 的事件分发做一下规律总结,包括【单一 View】,【单一 Vi...
1.View 事件分发初体验 View 事件在 Android 中也是很重要的一块,通过对事件的处理可以完成一系列的交互操作,使界面有更好的交互效果,本篇文章就来体验一下事件...
synchronized 和 ReentrantLock 上一篇文章 并发学习之 - synchronized 中我们讲解了如何使用关键字 synchronized 来实现同...