1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Swift4 UIColloctionViewを使った時の表示順序

Posted at

はじめに

Swiftで、UICollectinViewを使った時に、view〜のライフサイクルとcollectionの表示のためのコールバックがどの順で呼ばれるかを調べたメモ書きです。
Xcode 10.2で調べました。

画面遷移時

他の画面から遷移してきた時の呼び出し順序です。

  1. viewDidLoad

  2. viewWillAppear

  3. viewDidAppear

  4. viewWillLayoutSubviews

  5. viewDidLayoutSubviews

    この後collectionViewのコールバックが呼ばれます。

  6. numberOfSections

  7. collectionView numberOfItemsInSection (セクションの数だけ繰り返し呼ばれる)

  8. collectionView cellForItemAt (section * item の数だけ繰り返し呼ばれる)

    そしてもう一組LayoutSubviews関係が呼び出されてました。
    
  9. viewWillLayoutSubviews

  10. viewDidLayoutSubviews

collectionView.reloadDate呼び出し時

この時は、当然view〜のライフサイクルのメソッドは呼ばれなく、collectionViewのコールバックのみ呼ばれます。

  1. reloadData
  2. numberOfSections
  3. collectionView numberOfItemsInSection (セクションの数だけ繰り返し呼ばれる)
  4. collectionView cellForItemAt (section * item の数だけ繰り返し呼ばれる)
1
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?