ListView可以自動排版,因此用起來比較省力。但是有一個需要注意的地方:
如果要把元素刪除,不可以調用元素的removeFromParent,而需要調用ListView::removeChild()
為什么呢?因為元素放進ListView以后,實質上是成為ListView內部innerContainer的child,此時如果調用元素的removeFromPrarent,則只會調用innnerContainer的removeChild,沒有調用ListView的重寫版本。再重寫版本中有重要的邏輯代碼,沒有調用到。
后果就是,元素刪除后,ListView的大小並沒有隨之改變,如果經常增刪元素,會看到ListView不停的變長。