关于AOP、Plugin、Transform的概念,大家都卷到这个份上了,就不再细说了。撸个经典的demo,方法耗时检测,提供一下学习思路。相信按照下面这个流程走下来,肯定是...
关于AOP、Plugin、Transform的概念,大家都卷到这个份上了,就不再细说了。撸个经典的demo,方法耗时检测,提供一下学习思路。相信按照下面这个流程走下来,肯定是...
我的CSDN博客同步发布:玩转AppBarLayout,更酷炫的顶部栏 上一篇文章[《CoordinateLayout的使用如此简单 》]上一篇文章《CoordinateLa...
1. 前言 作为Android程序员,或者是想要去模仿一些酷炫的效果,或者是为了实现视觉的变态需求,或者是压抑不住内心的创造欲想要炫技,我们不可避免地需要做各种动画。Andr...
先看一些现象吧:用eclipse或者Android studio,新建一个Activity自动生成的布局文件都是RelativeLayout,或许你会认为这是IDE的默认设置...
一、Fragment事务提交的部分操作 1.相关源码概念 FragmetActivity的getSupportFragmentManager()内部是通过FragmentCo...
看完本文你将了解: ACTION_CANCEL的触发时机 滑出子View区域会发生什么?为什么不响应onClick()事件 首先看一下官方的解释: 说人话就是:当前的手势被中...
UI 优化系列专题,来聊一聊 Android 渲染相关知识,主要涉及 UI 渲染背景知识、如何优化 UI 渲染两部分内容。 UI 优化系列专题 UI 渲染背景知识 《View...
在Android中我们知道,Activity启动完成之后,走完onResume方法之后,会进行window的添加。添加过程会调用ViewRootImpl的setView()方...
最详细的 Toolbar 开发实践总结 过年前发了一篇介绍 Translucent System Bar 特性的文章 Translucent System Bar 的最佳实践...
1、Java中实现多线程有几种方法 继承Thread类;实现Runnable接口;实现Callable接口通过FutureTask包装器来创建Thread线程;使用Execu...
一、前言 ReentrantLock主要利用CAS+AQS队列来实现。它支持公平锁和非公平锁,两者的实现类似。 CAS:Compare and Swap,比较并交换。CAS有...
Java动态代理的用法如下: 而上面InvocationHandler的invoke方法中对接口定义的方法的实现是通过接口的匿名内部类完成的,当然还可以使用其他的方式,例如:...
参考文献:https://juejin.cn/post/6987002152191426568#heading-2[https://juejin.cn/post/698700...
努比亚技术团队原创内容,转载请务必注明出处。 1.前言 从用户手指点击桌面上的应用图标到屏幕上显示出应用主Activity界面而完成应用启动,快的话往往都不需要一秒钟,但是这...
Jetpack--Navigation原理 Jetpack向开发者提供了导航组件来实现Activity或者Fragment的跳转,今天就分析一下使用Navigation来实现...
一、单一职责原则(SRP) 单一职责原则(SRP)用于指导我们,在对功能划分到具体的类中的时候,要保证具有高内聚性。对于SRP的一个很好的描述是:就一个类而言,应该仅有一个引...
想要在windows下安装docker,必须满足:windows 10 64 位:专业版、企业版或教育版(在资源管理器,右键属性中可以查看)必须启用hyper-V 和Cont...