このアプリでは、カードの NSOrderedSet をコア データの「サブジェクト」エンティティに保存して、ユーザーが自分でクイズできるようにします。カードは火口のようにファッショナブルに反転してドラッグしますが、カードの更新方法では問題があります。現在のカードは、ビューでロードしたことを設定すると正常に表示されます (NSOrderedSet の配列プロパティの最初のカード)。ただし、ドラッグして更新すると、すぐに最後のカードに移動します。たとえば、デッキに 5 枚のカードがある場合、最初のカードから開始し、すぐに 5 番目のカードに移動します。必要に応じて循環するようにこのメソッドを更新する最良の方法は何でしょうか?
tableViewDelegate メソッドのようなインデックス プロパティを渡す必要があると思いますが、誰かが以前にこのようなことをしたことがあり、より良い方法がある場合は大歓迎です。
いつものように助けてくれてありがとう。
func updateCard() {
//cycle through questions here
for var i = 0; i < (self.subject.cards?.count)!; i++ {
self.currentCard = self.subject.cards?.array[i] as? Card
self.draggableView.questionLabel.text = self.currentCard?.question
self.draggableView.answerLabel.text = self.currentCard?.answer
}
}