Day22中,我們以一個ArrayList動態地建立TextView,如下:
TextView wordView = new TextView(this);
wordView.setText(tortoises.get(0)); //tortoises是個ArrayList
rootView.addView(wordView);
這部分可以改寫為for,以便使用整個ArrayList:
for (int index=0; index<tortoises.size(); index++){
wordView.setText(tortoises.get(index));
rootView.addView(wordView);
}
如此一來,便能增加多個TextView,但若我們的ArrayList超長,我們真的有需要建立那麼多TextView嗎?
例如我們有100個物件在ArrayList中,但使用者一次只能看10筆資訊時,就牽涉到如何重複使用TextView了。
Memory的管理之所以重要,是因為行動裝置內的資源是由各個App所共享,尤其是多個App同時運作,App間可能會互相影響。
這裡我們將用到VIEW RECYCLING
(視圖回收),其需要ListView
與Adapter
合作
超出螢幕範圍的view將被回收。
Scrap Views:一堆目前沒用到的view
因此當使用者滑動螢幕時:
ListView
會自行判斷,並放到Scrap Views中。明天將進入VIEW RECYCLING
的實作。