2015-10-31 12 views
6

私のアプリでは、ユーザーはコレクションビュー内で複数の連絡先を選択できます。彼がプロパティ "isSelected"を選択すると、私はtrueに設定され、collectionviewは選択されたセルをリフレッシュします。ここでは、選択とセルの強調表示との間のわずかな遅延を認識することができます。しかし、次のステップでは、選択した連絡先を持つグループを作成し、最後にプロパティ「isSelected」をfalseに設定しました。これは、50個のオブジェクト(5秒)に対して許容されない時間を要し、調整する必要があります。ここでレルムが複数のオブジェクトを更新するのが遅い

は、選択したすべての連絡先を選択解除するために私のコードです:

for contact in self.selectedContacts { 
      try! self.realm.write{ 
       contact.isSelected = false; 
       self.realm.add(contact, update: true) 
      } 
     } 

は、それが一度にバッチ更新を実行することは可能ですか?

答えて

15

は、書き込みブロック内のforループを入れてみてください:

これだけ
try! self.realm.write { 
    for contact in self.selectedContacts { 
     contact.isSelected = false; 
     self.realm.add(contact, update: true) 
    } 
} 
+0

、感謝を!ハイライトの遅延を減らすために選択をどのように実装しますか? – netshark1000

+0

実際のコードを見ずには分かりません。たぶんあなたは別の質問をすることができます(とにかく別の話題です)? – joern

+0

いいえ私はそれを実行します – netshark1000

関連する問題