一、概述 在上一篇文章中,我们通过源码的角度了解FragmentPagerAdapter和FragmentStatePagerAdapter的原理。这其实是为我们分析数据更新...
一、概述 在上一篇文章中,我们通过源码的角度了解FragmentPagerAdapter和FragmentStatePagerAdapter的原理。这其实是为我们分析数据更新...
前言 TracePlugin 卡顿分析插件中包含很多 Tracer,而 FrameTracer 负责监听帧率。拿到产生的帧率数据之后,根据用户设置的丢帧阈值进行报告。 那么 ...
前言 接上文,我们首先来看 TracePlugin 卡顿分析的实现。TracePlugin 主要靠监视主线程的各种状态来分析是否卡顿,接下来我们开始吧。 前文传送门: And...
RecyclerView的复用机制 前提 RecyclerView,即“熟悉”又“陌生”的控件。说起熟悉,是因为它频繁的使用在各个界面中,手机的竖直操作,需要大量的列表展示,...
要实现这种效果,子view在父的之上,关键代码如下 主要用到的属性 1 、clipToPadding就是说控件的绘制区域是否在padding里面的,true的情况下如果你设...
Service是一种可以在后台执行耗时操作而没有用户界面的应用组件。它默认运行在主线程中,不可以直接进行耗时操作,关于在Service中进行耗时操作详见本文末尾 —— Int...
Given a string, find the length of the longest substring without repeating characters. ...
Given an array of integers, return indices of the two numbers such that they add up to ...
Volatile 假设有这样一种情况,线程1通过一个flag控制线程2的运行如下图: 如果不对 做任何处理,那么就会产生可见性问题( ),即 对 值作出了改变, 的 却可能没...