1、布局優化
1)避免overdraw
2)優化布局層級 降低view樹的高度。
3)避免巢狀過多無用布局
4)使用標籤重用layout
5)使用實現view的延遲載入,是乙個輕量級的元件,不僅不可視,而且大小為0.需要的時候再顯示。兩種方式顯示這個view。
mviewstub.setvisibility(view.visible);
view view = mviewstub.inflate()
5)hierarchy view 位於sdk\tools目錄下,命令列輸入hierarchyviewwe.bat
2、記憶體優化
1)bitmap優化
bitmap是造成記憶體占用過高甚至是oom的最大威脅。方法:
使用適當解析度和大小的
及時**記憶體 一旦使用完後,一定要及時使用bitmap.recycle()方法釋放記憶體資源。 android3.0之後,放在堆記憶體,有gc管理,不需釋放了。
使用快取 記憶體快取lrucache和硬碟快取disklrucache
2)**優化
對常量使用static修飾符
使用靜態方法,會比普通方法提高15%左右的訪問速度
減少不必要的成員變數 在android lint工具已經整合檢測了。
減少不必要的物件,,使用基礎型別會比使用物件更加節省資源,同時更應該避免頻繁建立段作用域的變數。
盡量不要使用列舉、少用迭代器
對cursor、receiver、sensor、file等物件,要注意對它們的建立、**、註冊、解註冊。
避免使用ioc框架
使用renderscript、opengl來進行非常複雜的繪圖操作
使用su***ceview代替view進行大量、頻繁的繪圖操作
盡量使用檢視快取,而不是每次inflate()解析檢視
Android群英傳小總結
看書的總結參考資料 android群英傳 1.1控制項架構 activity phonewindow decorview titleview,contentview 1.2view的測量 1 onmeasure 方法 2 measurespec類是乙個32位int值,高2位是測量模式,低30是測量大...
Android群英傳小總結
看書的總結參考資料 android群英傳 1.1控制項架構 activity phonewindow decorview titleview,contentview 1.2view的測量 1 onmeasure 方法 2 measurespec類是乙個32位int值,高2位是測量模式,低30是測量大...
群英傳學習筆記
內容一 activity的任務棧 singletop的應用場景 這種啟動模式通常適用於接收到資訊後顯示的介面,例如qq接收到訊息後彈出actvity,如果一次來10條簡訊,總不能一次彈10個activity。singletask的應用場景 可以發現,使用這個模式建立的activity不是在新的任務棧...