UICollectionView with full page cells VS UIScrollView with child view controllers

I’m trying to create a ViewController which would have swipe-able (android like tabs) pages. These pages themselves will have scrollviews(vertical) inside them and multiple views which would be added dynamically depending on type of response (different network calls for each page). I can’t use a PageViewController as I want the pages to take up only half the screen.

Issues with CollectionView -

  • If the cells would get reused (or removed from memory), how would I maintain the state of the cell’s UI and store that data (especially difficult for views as each page might have different type of view in them)

Issues with ScrollView -

  • I’m worried if there would be memory issues if all page view controllers would be in memory with each view in it

PS - data in each page would be 4-10 stackviews each containing 2-10 images/labels OR just one collectionview

PSS - Total number of tabs wouldn’t exceed 10, minimum would be 1

  1. As you described above that your pages won’t exceeds to 10, then no memory issue will raised with UIScrollView. Whenever you are creating or setting up date in scrollview fir remove all child views / subviews.

    for (id object in self.scrlView.subviews) {
    if (object != nil) {
    UIView *subView = (UIView *)object;
    [subView removeFromSuperview];

  2. If your data not similar page wise and each page contain different UI, then you can use UIScrollView or UICollectionView. I suggest to use scrollview with different different cells. You have to create cells as per your data in pages.

This topic was automatically closed after 166 days. New replies are no longer allowed.