Glide之基本使用


 

 

Glide 監聽Activity或Fragement的生命周期原理

當一個對象的狀態變化時,通知另一個對象,很容易想到用到了觀察者模式,那便有被觀察者,觀察者,用於管理觀察者的管理類。

以監聽Activity的生命周期為例,被觀察者是Activity,Request請求為觀察者,下面分析源碼

1.在當前Activity的FragmentManager中加入RequestManagerFragment,Fragement的生命周期跟Activity的生命周期相關聯

@Override
public void onStart() {
super.onStart();
lifecycle.onStart();
}

@Override
public void onStop() {
super.onStop();
lifecycle.onStop();
}

@Override
public void onDestroy() {
super.onDestroy();
lifecycle.onDestroy();
unregisterFragmentWithRoot();
}
可以 看到lifecycle就是管理觀察者的管理類,當Activity的生命周期變化時,會調用相應的方法,現在只要向lifecycle中添加LifecycleListener的實現類就可以監聽Activity的生命周期。

2.生成requestManager,里面包含GlideLifecycle,requestManager實現LifecycleListener,把requestManager注冊到GlideLifecycle中

3.requestManager中requestTracker對象用來管理Request

 調用順序是 Acitity->RequestManagerFragment->GlideLifecycle->requestManager->requestTracker->Request
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM