You should not store the views in a list. This can lead to memory leaks. The preferred way to implement such dynamic view creation is to always have a container view and to remove all child views before updating, then just adding all your current child views again. With the number of views we use this is also not a performance issue.