效率是ListView/ListActivity程式實作上最常發現的問題,如何讓使用者能很順暢的滑動列表資訊並且手機記憶體資源仍能保持充足以得到良好的使用體驗,這無疑是一個不斷持續精進的工作。 |
在自訂適配器實作BaseAdapter類別的過程中最大的瓶頸就是getView()方法的調用,要知道每一次使用者滾動ListView列表容器裡的列表項目時適配器的getView()方法就必須調用一次,以便將最新的資訊顯示給使用者。 |
每當為了顯示新的列表資訊,很自然地會將相關創建View物件實體的程式碼寫在getView()方法中,但當項目增多時這無疑是對手機資源消耗的最大傷害,所以必須要想如何暫存已經創建過的View物件實體,等需要時不是再重新創建新的View物件實體,而是直接提取之前已暫存的資訊,提高資源重複使用與再利用性。 |
那要暫存在哪?getTag()/setTag()這個每個View物件都有的標籤方法將是一個很好的解決之道。 |
|
|
|||||||||
|
|
|
|||||||||
|