編輯:關於Android編程
在使用Android Handler的時候,可能會遇到編譯器給我們這樣的警告:
This Handler class should be static or leaks might occur
造成這個警告的原因是handler持有外層類(Activity等)的引用,同時消息隊列中的Message對handler也持有引用,這樣就造成一些資源不能回,從而可能造成內存洩露。
解決這個警告的辦法即讓handler不持有外部類的引用,怎麼做到這一點呢,即將Handler設置為靜態內部類就行了,將外部類(Activity等)傳遞給Handler,在Handler中建立弱引用(WeakReference).
為了能夠使以後更好的使用Handler-Message機制,我這裡對其進行了封裝,使用方法見下。先看一下代碼。
CBHandler.java
1
* 構建防止內存洩露的handler
*
CBActivity
1
在使用中,我們只需自己的Activity繼承CBActivity即可,在onCreate時自動創建UnleakHandler的實例handler,從CBHandler的代碼中我們也可以看出來,UnleakHandler自動將收到的消息交給CBActivity中的processMessage進行處理。我們只需要在發送消息的時候使用handler變量發送即可,處理在processHandler中處理即可。
一、FLAG的具體意義1、FLAG概述有關save系列函數,在canvas中總共有如下幾個: public int save()public int
京東客戶端的輪播文字效果:本次要實現的只是後面滾動的文字(前面的用ImageView或者TextView實現即可),看一下實現的效果實現思路上圖只是一個大概的思路,要實現
之前自己的編程完全是在PC上進行的,而且主要是在算法和數據結構上。由於某些需要加之認識到Android的重要性,且大學走到現在基本上沒什麼課了,空閒時間很多,於是就開始學
轉載請注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),謝謝支持! 開篇廢話: 這個項目准備分四部