李耀明
李耀明
1.减少过度绘制,减少不必要的背景绘制 2.减少布局深层次嵌套,可以配合merge,include,viewStub,约束布局这些来减少布局的开销 3.能用列表的尽量用列表,尽量减少嵌套
singletask模式用的比较多,一般项目首页就可以采用此模式,比如应用中的返回首页按钮。
synchronized https://juejin.im/post/5c3c5e0ce51d4551d04511c9
总的来说就是生命周期长的对象持有了生命周期短的对象,导致生命周期短的对象在回收时导致对象无法释放,从而导致内存泄漏。
工欲善其事,必先利其器,搞台Mac吧。
在子线程中创建handler需要手动创建looper。
自定义handler对象,传入LifecycleOwner对象,监听activity的ondestroy回调,在用ondestroy的时候把消息remove掉。具体使用:https://github.com/AlanCheen/Pandora/blob/master/pandora-basic/src/main/java/me/yifeiyuan/pandora/LifecycleHandler.java
hello,Did you solve this problem?
最优方式,官方组件ViewModel。