-2

我想做一些关于电影的测验。

有 10 个对象的测验可变数组。使用核心数据..实体就是电影。属性是标题、演员和正确计数。

有两个文本字段,

标题字段和演员字段。

我想从一个对象做两个测验

第一个测验隐藏了哪个titlefield,第二个测验隐藏了哪个actorfield。

用户可以输入电影标题或演员姓名。在文本字段中。

如果用户输入正确的东西,我想 +1 正确计数。

我所做的是..

我将测验可变数组放入这两个数组中

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

和电影 *quizMovie

并且.. 在 suffle 这两个数组之后设置枚举器以使用 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 的实例。

编辑 如果新闻是奇数,则此方法从一个数组中选择,如果是偶数,则从一个数组中选择,正如我认为根据我们的对话您所希望的那样。

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 回答