のアクセサリビューにカスタムボタンを作成しましたUITableViewCell
。ボタンは、リストビューのカスタマイズされたチェックボックスとして機能します。
プログラムで「チェック済み」アイテムをの2番目のセクションに移動したいのUITableView
ですが、これを行うのが困難になっています。
私はMVCをフォローdidArrive
しており、次のメソッドでBOOLを使用して、チェックされたアイテムを並べ替えています。
- (void)shuffleGuests
{
RCGuestManager *movedGuest = [[RCGuestManager alloc] init];
for (id guest in allGuestsPending) {
if ([guest didArrive]) {
[allGuestsArrived addObject:guest];
movedGuest = guest;
}
}
[allGuestsPending removeObjectIdenticalTo:movedGuest];
}
2つの配列に注意してください。チェックされていないアイテムはallGuestsPending配列に入れられ、チェックされたゲストはallGuestsArrived配列に入る必要があります。
このメソッドは、行がタップされたときに呼び出されます。アイテムがチェックされ、テーブルビューの1つのセクションから別の2つのセクションに移動されます(配列と一致します)。
もちろん、列挙中にオブジェクトを削除することはできないので、移動したオブジェクトを変数に入れてから、新しい配列に追加しながら、以前の配列からオブジェクトを削除しようとしています。
上記の方法では、配列の最後の項目が常に新しいセクションに移動します。
この種のことをするためのより良い方法はありますか?