NSDiffableDataSourceSnapshot

6909 ワード

https://developer.apple.com/documentation/uikit/nsdiffabledatasourcesnapshot
"A representation of the state of the data in a view at a specific point in time."
ビュー内のデータ状態の特定の時点での表示.
Declaration
struct NSDiffableDataSourceSnapshot<SectionIdentifierType, ItemIdentifierType> where SectionIdentifierType : Hashable, ItemIdentifierType : Hashable
Overview
可変データ・ソースは、スナップショットを使用してコレクション・ビューとテーブル・ビューにデータを提供します.ビューに表示されるデータの初期状態をスナップショットで設定したり、後で更新したりすることができます.
スナップショットのデータは、表示する部分とアイテムとして作成され、必要な順序で表示されます.レイアウトとアイテムを追加、削除、移動することで、表示する内容を設定できます.
Important
各セクションおよびプロジェクトには、Hashableプロトコルに準拠する一意の識別子が必要です.
スナップショットを使用してビューにデータを表示するには、次の手順に従います.
スナップショットと、表示するデータのステータス
  • を作成して入力する必要があります.
  • UIにスナップショットを適用して変更を反映する必要があります.
  • スナップショットを作成および設定するには、次のいずれかの方法を使用します.
  • 空のスナップショットを作成し、セクションとプロジェクトにスナップショットを追加します.
  • データソースをダンプ可能なsnapshot()メソッドを呼び出して、スナップショットを変更し、現在のスナップショットをインポートした後に表示するデータの新しい状態を反映します.
  • たとえば、次のコードでは空のスナップショットが作成され、3つのアイテムを使用して一部がスナップショットとして埋め込まれます.スナップショットを適用しながら、以降のスナップショットに表示される新旧状態間のUI更新をアニメーション処理する.
    // Create a snapshot.
    var snapshot = NSDiffableDataSourceSnapshot<Int, UUID>()        
    
    // Populate the snapshot.
    snapshot.appendSections([0])
    snapshot.appendItems([UUID(), UUID(), UUID()])
    
    // Apply the snapshot.
    dataSource.apply(snapshot, animatingDifferences: true)
    詳細については、可変データ・ソース・タイプを参照してください.
  • UICollectionViewDiffableDataSource
  • UITableViewDiffableDataSource
  • NSCollectionViewDiffableDataSource
  • UICollectionViewDiffableDataSource
    https://developer.apple.com/documentation/uikit/uicollectionviewdiffabledatasource
    https://velog.io/@panther222128/UICollectionViewDiffableDataSource
    UITableViewDiffableDataSource
    https://developer.apple.com/documentation/uikit/uitableviewdiffabledatasource
    https://velog.io/@panther222128/UITableViewDiffableDataSource
    NSCollectionViewDiffableDataSource
    https://developer.apple.com/documentation/appkit/nscollectionviewdiffabledatasource
    https://velog.io/@panther222128/NSCollectionViewDiffableDataSource
    BridgingNSDiffableDataSourceSnapshotReferenceオブジェクトは、このタイプに接続できます.
    let snapshot = snapshotReference as NSDiffableDataSourceSnapshot<Int, UUID>
    Topics
    Supporting Bridging
    NSDiffableDataSourceSnapshotReference
    ビュー内のデータ状態を特定の時点で表示するためのObjective-Cオブジェクトの切り替え表示.
    https://developer.apple.com/documentation/uikit/nsdiffabledatasourcesnapshotreference
    https://velog.io/@panther222128/NSDiffableDataSourceSnapshotReference
    See Also
    Data
    UICollectionViewDiffableDataSource
    コレクションビューでデータを管理し、セルを提供するオブジェクト.
    https://developer.apple.com/documentation/uikit/uicollectionviewdiffabledatasource
    https://velog.io/@panther222128/UICollectionViewDiffableDataSource