先說結(jié)論吧 RecycleView有4級緩存 1.Attached scrap & Changed scrap屏幕中的緩存推正,用于數(shù)據(jù)刷新時滋早,不需要重新加載子ItemView,...
先說結(jié)論吧 RecycleView有4級緩存 1.Attached scrap & Changed scrap屏幕中的緩存推正,用于數(shù)據(jù)刷新時滋早,不需要重新加載子ItemView,...
大佬分析的牛逼,茅塞頓開
RecycleView 復(fù)用之一先說結(jié)論吧 RecycleView有4級緩存 1.Attached scrap & Changed scrap屏幕中的緩存柒傻,用于數(shù)據(jù)刷新時,不需要重新加載子ItemView,...
PermissionJ 使用Aspect實現(xiàn)的面向切面進(jìn)行Android動態(tài)權(quán)限申請Github[https://github.com/Archer1347/Permissi...
Android Studio打開profile崩潰解決方案[https://blog.csdn.net/qq_42047018/article/details/1228418...
怎么解決
LeakCanary檢測內(nèi)存泄露案例分析LeakCanary[https://square.github.io/leakcanary/] 集成方式 新版的集成方式相對于老版本更加方便挟阻。直接依賴就可以了琼娘,詳見官網(wǎng) 泄...
可以使用DiffUtil做局部刷新
使用DataBinding在RecyclerView中數(shù)據(jù)刷新時出現(xiàn)界面閃爍問題描述:項目中使用RecycleView作為數(shù)據(jù)展示列表,并使用DataBinding做RecycleView的數(shù)據(jù)綁定拒炎,當(dāng)ObservableList發(fā)生變化時挪拟,會先用O...
說的有道理
單例模式,你真的寫對了嗎击你?看公司代碼的時候發(fā)現(xiàn)項目中單例模式應(yīng)用挺多的玉组,并且發(fā)現(xiàn)的兩處單例模式用的還是不同的方式實現(xiàn)的,那么單例模式到底有幾種寫法呢丁侄?單例模式看似很簡單惯雳,但是實際寫起來卻問題多多 本文...
Android模塊化頁面跳轉(zhuǎn)SchemeGithub[https://github.com/Archer1347/SchemeDemo] SchemeDemo 通過注解實現(xiàn)U...
Android模塊化通信協(xié)議ProtocolGithub[https://github.com/Archer1347/Protocol] 原理:1、通過注解+APT將接口類與...
----
這里沒有理解清楚是如何獲取wms
該方法里面可以看到如果傳入的 wm 為空則將其重新賦值鸿摇。這里其實是獲取了 WindowManagerService 的代理石景,因為 WindowManagerService 和 Activity 所在的應(yīng)用不在一個進(jìn)程里,這里是通過 Binder 通信獲取的一個 WindowManagerService 代理拙吉。獲取完 WindowManagerService 代理后通過它來創(chuàng)建出一個真正要用的 WindowManager 并賦值潮孽。
---
個人理解:
1.這里獲取的并不是wms的代理,獲取的是所有Window的頂層窗口管理器筷黔,wm是本地的Window管理器往史,用于與wms進(jìn)行通信,并非wms的代理
可以查看ContextImpl佛舱,通過SystemServiceRegistry.getSystemService獲取了全局wm
2.wm將所有操作委托給WindowManagerGlobal來完成椎例,而WindowManagerGlobal通過獲取wms的代理來操作Window
public static IWindowManager getWindowManagerService() {
sWindowManagerService = IWindowManager.Stub.asInterface(
ServiceManager.getService("window"));
....
return sWindowManagerService;
}
具體參考:http://www.reibang.com/p/28f116839a9d
1.Window WindowManager WindowManagerService啟動一個ActivitystartActivity最終會走到ActivityThread的performLaunchActivity這個函數(shù)里面會經(jīng)過層層深入會調(diào)用 Acti...
感謝支持
SharedPreference與MMKVSharedPreference 數(shù)據(jù)格式 XML格式保存,使用Pull解析 初始化 創(chuàng)建SharedPreferencesImpl時解析數(shù)據(jù)请祖,子線程使用Java IO讀取整...