我想写点什么,但我不知道该怎么做以及从哪里开始。
所以,我有一个名为imagesArray
的数组,其中包含20个动物图像,比方说,数组的5个第一个图像将是:Rabbit.png,Horse.png,Lizard的图像。 png,Mouse.png和Dog.png。
因此,在调用wordsArray
的数组中,我将拥有索引范围0-4中的项目:“Rabbit”,“Horse”,“Lizard”,“Mouse”和“Dog”等等。 。
我还有4 UIButtons
。
我想要的程序是什么,当for循环在item0
上时,意味着i=0
,来自imagesArray
的图像是Rabbit.png,而来自wordsArray的单词是“兔子“,我想从”兔子“这个词中选择一个随机字母,并在4个UIButton
之一上显示一次,其他3个UIButton
将显示任何其他字母但不同的字母。
我仍然没有找到一个好办法。也许是因为我对Objective-C或编程都不熟悉......
我怎样设法做到这一点?
编辑
我有这个代码,但它不好,因为它使用UIImages而不是单词,我不知道如何用文字来做..
-(void)placeWordAndPictueOnScreen
{
// sets the letter in a random button
NSMutableArray * ButtonArray = [[NSMutableArray alloc]initWithObjects:btnLetter1,btnLetter2,btnLetter3,btnLetter4, nil];
int CorrectImg = random() % [ButtonArray count];
imgclick = CorrectImg;
UIImage * img = [UIImage imageNamed:[LettersArray objectAtIndex:imgcounter]];
UIButton * btn = [ButtonArray objectAtIndex:CorrectImg];
[btn setImage:img forState:UIControlStateNormal];
[ButtonArray removeObjectAtIndex:CorrectImg];
// sets the other buttons with random letters
while ([ButtonArray count] != 0)// how many times u want to run this
{
int imgRand = random() % [LettersArray count]; //number for random image
int btnRand = random() % [ButtonArray count]; //number for random button
//get that random image
UIImage * img = [UIImage imageNamed:[LettersArray objectAtIndex:imgRand]];
//get that random button
UIButton * button = [ButtonArray objectAtIndex:btnRand];
//put image on that button
[button setImage:img forState:UIControlStateNormal];
[ButtonArray removeObjectAtIndex:btnRand];
}
}
答案 0 :(得分:1)
我相信下一个方法可以帮助你
-(NSMutableArray *)getStringInArray:(NSString *)string{
NSMutableArray *charsArray=[[NSMutableArray alloc]init];
while (![string isEqualToString:@""]) {
[charsArray addObject:[string substringToIndex:1]];
string=[string substringFromIndex:1];
}
return [charsArray autorelease];
}