iphone开发 - 从阵列问题,语法帮助中挑选独特的图像

时间:2009-12-05 22:43:51

标签: iphone

代码:

//pick one filename
int numFileNames = [imageArray count];
int chosen = arc4random() % numFileNames;
NSString *oneFilename = [imageArray objectAtIndex: chosen];

谢谢!

2 个答案:

答案 0 :(得分:0)

你的NSMutableArray中有一个错误:

您需要先将其初始化。

NSMutableArray *imageArray = [[NSMutableArray alloc] init];

并且这是一个建议,如果您不一定需要界面构建器的帮助,您可能需要考虑cocos2d。您想要做的事情可以很容易地完成。

- 至于步骤3.使用Rand()进行随机选择,做一个循环来检查所选图像是否已经添加到数组中(此数组用于拾取图像),如果它在数组中再次随机化,如果没有则添加进入拾取的数组,并执行ball1.image = [UIImage imageNamed:[imageArray objectatindex:randomNum]];

答案 1 :(得分:0)

问题没有指明手头的问题,它只是提到开发人员想要在数组中存储唯一的图像名称,因此可以进行编码:

NSMutableArray * arrImages = [NSMutableArray new];

for (int i=0; i<2; i++) {

    NSString *imgName = [NSString stringWithFormat:@"imageBall%d",i];

    //Here we can check whether image is already added or not.
    if (![arrImages contains Object:imgName]) {
        [arrImages addObject:imgName];
    }
}

int choosen = arc4random() % (int)arrImages.count;

NSString *imageFileName = arrImages[choosen];