鏈接:/question/38686937/answer/77677821
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。
深讀:
如:View、ViewGroup、AdapterView、ListView、GridView、Window、ViewDragHelper、ItemTouchHelper、SurfaceView、TextureView、VelocityTracker、GestureDetector、Scroller、ScrollerCompat、OverScroller等
淺讀:
WMS、AMS、PMS、NMS、InputSystem等相關實現
1. Android事件分發機制:幫助妳在寫復雜自定義控件時協助解決事件沖突。
2. View的測量布局和繪制機制,熟練掌握畫布Canvas API、Android坐標系、觸控事件等,熟悉繪圖技巧、熟悉滑動原理。
3. Android動畫:熟練掌握動畫Tween Animation、Frame Animation、Property Animation,有助於妳寫出交互體驗好的自定義控件。
4. Android多線程通信原理、線程控制、線程池、掌握Handler、Looper、ThreadLocal、Thread、Runnable、AsyncTask、HandlerThread、IntentService、Future、FutureTask、Callable等,掌握Java並發編程。
5.掌握Android進程間通信原理,試著分析Binder工作機制。
5.了解Activity啟動過程,可以從startActivity()壹步壹步分析源碼,過程不必拘泥於實現細節,掌握大致流程即可。
6.了解四大組件工作過程,和上面壹個壹樣,從源碼分析,壹步壹步來看WMS、AMS、PMS、NMS等如何通過binder完成進程間通信。
7.了解window創建過程、掌握window添加刪除更新機制。
8.理解Context;如Application對應的Context、Activity對應的Context、Service對應的Context以及Context之間的關系
9.掌握Android資源加載機制