- 博客(11)
- 收藏
- 关注
原创 onSaveInstanceState调用的时机
当某个activity变得“容易”被系统销毁时,该activity的onSaveInstanceState就会被执行。除非该activity是被用户主动销毁的例如: 用户按下HOME键时 关闭屏幕显示 从Activity中启动一个新的Activity时 屏幕方向发生切换时 长按HOME键,选择运行其他的程序时。...
2020-05-08 14:42:10 226
原创 Android源码设计模式
1、单例模式:Android源码中的单例模式在Android系统中,我们经常会通过Context获取系统级别的服务,如WindowsManagerService、ActivityManagerService等.优点:(1)由于单例模式在内存中只有一个实例,减少了内存开支,特别是一个对象需要频繁的创建、销毁时,而且创建或销毁时性能又无法优化,单例模式的优势就非常明显。(2)单例模式...
2019-09-17 16:58:04 200
转载 HTTPS理论基础及其在Android中的最佳实践
转载:https://blog.csdn.net/iispring/article/details/51615631
2019-07-03 09:59:07 105
原创 jvm随手记
java编译器: 1、如果一个类有两个方法,方法名和参数一模一样,这时候不管返回值一不一样,全部都编译不过去。2、如果子类有个方法和父类的一个方法,方法名和参数一模一样,返回值不一样,编译不过去;返回值一样(即 子类和父类的方法一模一样),重写父类方法。也就是说,编译器识别方法的关键在于,方法名和参数是否完 全一样,来判定能不能编译过去(重写除外)。3、重写的识别:类...
2019-06-29 10:51:05 103
原创 Class类中getName()、getSimpleName()、getCanonicalName()三个方法的区别
直接上代码:代码示例1(注意:下面代码中,Student类和Test类,两个是同等级的类):很显然:getSimpleName()仅仅只是获取到当前类名而已。另外两个方法目前暂时是一样,继续往下看这两个的区别(注意,上面代码的Student类和Test类,两个是同等级的类)代码示例2(注意:下面代码中,Student类是Test类的内部类):显然,得出结论:1、如果一个...
2019-06-23 17:26:52 783 1
原创 android中LinearLayout的布局优化
场景一:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="horizontal" android:layout_width="match_...
2019-05-07 16:14:46 187
原创 Android中反射和代理的实际应用
这边只是说个解决方法思路。比如说一个Activity页面,里面很多控件都有点击事件,即(view.setOnClickListener(this)),此刻产品提了个需求,想要在所以在点击事件操作前或者点击事件后做一些操作(比如:大数据埋点啥),解决方式有很多种,最直接最暴力的方法就是找到所有空间点击事件,一一添加上埋点事件,在onClick()方法中第一行或者最后一行添加我们要埋点的事件显然,...
2019-04-30 11:18:42 272
原创 EventBus原理解析和手写(一)
先在android studio添加引用:implementation 'org.greenrobot:eventbus:3.1.1'EventBus常规用法:FirstActivity的xml布局和代码<?xml version="1.0" encoding="utf-8"?><android.support.constraint.Constraint...
2019-04-18 14:33:52 204
原创 RxJava
概念Observable:在观察者模式中称为“被观察者”;Observer:观察者模式中的“观察者”,可接收Observable发送的数据;subscribe:订阅,观察者与被观察者,通过subscribe()方法进行订阅;1、创建“被观察者” 1、Observable observable = Observable.create(new ObservableOnSubscribe<String
2017-08-08 15:31:25 138
原创 Android沉浸式状态栏
Android沉浸式状态栏Android 4.4以上实现方式Android 5.0以上实现方式Android 4.4以上实现方式if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { Window window = getWindow(); // Translucent status bar window.ad
2017-08-01 11:30:04 165
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人