私は、削除する複数のセルを選択できるコレクションビューを持っています。つまり、複数のセルが削除された場合、複数のオブジェクトもセルごとにレルム-1オブジェクト内で削除されます。リスト内のオブジェクトを削除する - スウィフト
私はInt
の配列をとり、コレクションビューの選択されたindexPathから読み込まれる関数を持っています。
問題は、私は両方の
1を行うするかどうかはわかりませんということです)レルム内のオブジェクトを削除し、
2)List
私のコード
削除されたオブジェクトなしで最新のを持っている:
私はそうのようなインデックスのパスを取得する:
let indexPaths = collectionView.indexPathsForSelectedItems
これがために私の機能でありますindexPathsを取り込み、List
を更新し、レルム内のオブジェクトを削除します。オブジェクトが削除されていないため、現在は機能していません。私はremoveAll
が何も削除しないことに気づいた。
func removeVideos(at indexes: [Int]) {
let newVideos = List<Video>()
for (index, video) in favorite!.videos.enumerated() {
if !indexes.contains(index) {
newVideos.append(video)
}
}
let realm = try! Realm()
try! realm.write {
favorite!.videos.removeAll()
newVideos.forEach { newVideo in
favorite!.videos.append(newVideo)
}
}
}
私はそうのように、その関数を呼び出します。
removeVideos(at: indexPaths.map { $0.item })
任意の考え?
すばらしい説明!あなたは、他の人を助けることに関しては、ソフトウェア開発の全てにおいて最高の人物です - いつも明確で直接的な回答を素敵なやり方で提供してくれてありがとうございます。) – JEL
クイックフォローアップはユーザーによって開始されているので、通知ブロックを使用するか、またはRealmの 'Interface-Driven Write'を使用して選択したセルを削除しますか? – JEL
こんにちはTimさん、これを見てみることができますか(Realmのサンプルコードは表示されません):http://stackoverflow.com/questions/42988499/realm-object-level-notifications- inside-uicollectionviewcells – JEL