一、前言 工欲擅其事,必先利其器。当我们的应用发生错误或者崩溃时,如果有一款趁手的日志捕获工具,那将会得心应手的多。今天要学习的是来自 IQiYi 的 xCrash 日志捕获...
一、前言 工欲擅其事,必先利其器。当我们的应用发生错误或者崩溃时,如果有一款趁手的日志捕获工具,那将会得心应手的多。今天要学习的是来自 IQiYi 的 xCrash 日志捕获...
好久没有写博客了,感觉自己的手变得生疏了,今天来记录一下自己对Android里面的嵌套滚动的理解。 本文参考资料: 1.NestedScrollingParent, ...
1 简介 之前已经讲过TextView的基础知识,现在在这进一步进行讲解,这篇文字主要讲解如何给TextView设置段落级别的Span。如果一个Span想要影响段落层次的文本...
公司项目中使用 H5Fragment 作为展示 WebView 的通用组件。 之前使用方式 和淘宝类型,底部某个 Tab 中,展示的是 H5 的页面,其他都是原生的页面,使用...
切换到国内源 切换到官方源 报错
在 Android 日常开发过程中,混淆是我们开发 App 的一项必不可少的技能。只要是我们亲身经历过 App 打包上线的过程,或多或少都需要了解一些代码混淆的基本操作。那么...
本篇你将了解到: draw 的具体流程 简单的去重写 onDraw 方法 draw 方法 draw过程的主要流程如下: 绘制 background 如果需要的话,保存 can...
本篇你将了解到: layout 方法的作用 onLayout 方法是如何布局子 View 的 实战,如何快乐的自定义 View 在经过第一步的测量后,成功计算了每一个 Vie...
本篇你将了解到: LayoutParams 和 MeasureSpec 的作用和使用场景 父 View 如何使用 MeasureSpec 影响子 View 的测量 重写 on...
本篇你将了解到: LayoutInflater 获取方式 使用 LayoutInflater 如何获取到 View 对象 LayoutInflater 的获取方式 获得 La...
== 简单而又实在 在基本数据类型中比较的是两个数据的值。 在对象中比较的是两个对象的地址。 equal 追求的是“逻辑相等” 对大部分的对象来说,使用父类的 Object....
Android 事件分发流程 知识点:事件序列指以 ACTION_DOWN为开始,ACTION_UP为结束,ACTION_MOVE为中间过程。 分发 dispatchTouc...
Android 数据持久化 在 Android 中数据持久化的方式有以下几种。 SQLiteSQLiteOpenHelper ContentProvider FileInte...
JAVA内存区域 --(2)对象创建 JVM 在遇到一条 new 指令时,是如何为其分配内存空间并初始化的呢?笔者将流程画成了一个简单的流程图: 这里我们先略过第二步的类加载...
Java 虚拟机将管理的内存分为多个不同的区域,这些区域有着各自的用途和生命周期。在 Java 7 中,虚拟机将其划分为一下几个区域: 程序计数器 (Program Coun...