-2

映画についてクイズを作りたいです。

10個のオブジェクトを持つクイズの可変配列があります。コアデータの使用..エンティティは映画です。属性は、title、actor、およびcorrectcountです。

2つのテキストフィールドがあります。

タイトルフィールドとアクターフィールド。

1つのオブジェクトから2つのクイズを作りたい

タイトルフィールドが非表示になっている最初のクイズ、アクターフィールドが非表示になっている2番目のクイズ。

ユーザーは映画のタイトルまたは俳優の名前を入力できます。テキストフィールドで。

そして、ユーザーが正しいものを入力した場合、私は正しいカウントを+1したいと思います。

私がしたことは..

クイズの可変配列をこれらの2つの配列に入れます

Array A (quiz 1 to 10) <<for title quiz
Array B (same as array A) <<for actor quiz

そして映画*quizMovie

そして..これらの2つの配列をスフレした後、nextObjectメソッドを使用するように列挙子を設定します。

NSEnumerator *enu1 = [arrayA objectEnumerator];
NSEnumerator *enu2 = [arrayB objectEnumerator];

セット番号=1<

そして、クイズを設定してクイズを開始するためのUIButton

If( number%2==1)
quizMovie = [enu1 nextObject]
Titlefield.hidden = YES;
else
quizMovie = [enu2 nextObject]
Actorfield.hidden = YES;

そして、ユーザーが完了ボタンをタップすると、正しければ、正しいカウントを+1したいと思います。

これらのコードで..私は私が欲しいものを得ることができません...

完了します。

助けて、天才!

4

1 に答える 1

1

結合してから、ソート方法を使用します。

NSArray *combinedArray = [arrayA arrayByAddingObjectsFromArray:arrayB];
NSSortDescriptor *ascInts = [NSSortDescriptor sortDescriptorWithKey:@"self" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:ascInts];
combinedArray = [combinedArray sortedArrayUsingDescriptors:sortDescriptors];

これは、メンバーが NSNumber のインスタンスであると想定しています。

edit このメソッドは、プレスが奇数の場合は 1 つの配列から選択し、偶数の場合は別の配列から選択します。これは、会話に基づいてあなたが望むと思います。

static int pressNumber = 0;
pressNumber++;
NSArray *sourceArray;
if(pressNumber%2) { // if it's an odd-numbered press
  sourceArray = arrayA;
} else {
  sourceArray = arrayB;
}
int indexToSelect = (int) (floor(pressNumber/2.0))+1;
if(indexToSelect >= sourceArray.count) {
  // out-of-bounds
  pressNumber = 0;
  indexToSelect = 1;
}
selecteObject = [sourceArray objectAtIndex:indexToSelect];
于 2012-07-08T18:02:32.363 に答える