构造方法 View的构造方法有如下几个,其中前三个方法是API 1即引入,这也是最常使用的构造方法。但是 View(Context context, AttributeSet...
构造方法 View的构造方法有如下几个,其中前三个方法是API 1即引入,这也是最常使用的构造方法。但是 View(Context context, AttributeSet...
前言 Android Overlay是一种资源替换机制,它能在不重新打包apk的情况下,实现资源文件的替换(res目录非assert目录),Overlay又分为静态Overl...
工作原理 Android 中通过 Window 作为屏幕的抽象,而 Window 的具体实现类是 PhoneWindow 。通过 WindowManager 和 Window...
当前Android应用开发涉及的动画主要有三种,分别是:视图动画,逐帧动画,属性动画。 逐帧动画 是在 xml 中定义好一系列图片之后,使用AnimationDrawable...
今年暑假学校响应国家号召——暑假托管。 由于每个年级参加托管人数不多,特别是我六年级只有73个人参加,分两个班,只需要24位老师,而六年级有34位老师,一名老师请假...
是什么?为啥用?怎么用?——灵魂三连问 1、序列化和反序列化是什么? 序列化:把对象转变为字节序列的过程称为对象的序列化。 反序列化:把字节序列恢复为对象的过程称为对象的反序...
作者:王晨彦 开篇 一天,后台统计到线上有大量 OOM 崩溃,小王收到老板的紧急指令,立即排查! 小王心想,这还不简单,待我看看崩溃堆栈,分分钟解决。 于是小王不慌不忙的打开...
Android为了提供一个稳定的帧率输出机制,让软件层和硬件层可以以共同的频率一起工作,引入了 Vsync + TripleBuffer + Choreographer 的刷...
1. JDK1.6 开始对 synchronized 做了哪些优化?使用了锁升级、锁粗化、锁消除等方式来优化性能。锁升级就是先尝试偏向锁,如果没获取到锁就升级为轻量级锁,还没...
这个问题在其他人整理的面试宝典中也有提及,一般来说都是问View的刷新,基本上从ViewRootImpl的scheduleTraversals()方法开始讲就可以了。之前看别...
相⽐synchronized的加锁⽅式来解决共享变量的内存可⻅性问题,volatile就是更轻量的选择,他没有上 下⽂切换的额外开销成本。使⽤volatile声明的变量,可以...