Comic Reader

· 1min

前言

透過自己的 Project 練習 iOS 13 之後的新 API.

API

此專案使用到之前未使用過或少用到的 API:

本地端資料

SwiftData (iOS 17)

UIDataSource 系列

  • UICollectionViewDiffableDataSource (iOS 13)
  • UITableViewDiffableDataSource (iOS 13)
  • NSDiffableDataSourceSnapshot (iOS 13)

使用 UICollectionView 替代 UITableView

  • UICollectionViewCompositionalLayout (iOS 13)
  • UICollectionViewCompositionalLayout.list (iOS 14)
  • UICollectionLayoutListConfiguration (iOS 14)

UICollectionView 新 API

  • UICollectionView.CellRegistration (iOS 14)
  • UICollectionViewListCell (iOS 14)
  • UIListContentConfiguration (iOS 14)
  • collectionView.dequeueConfiguredReusableCell (iOS 14)
  • UIHostingConfiguration (iOS 16) + SwiftUI

最印象深刻的大概就是 UIHostingConfiguration (iOS 16) + SwiftUI,
直接使用 SwiftUI 當 Cell 的 Content 了.

原始碼

GitHub