0

私は Objective-C と X-Code に不慣れで、基本的に iOS でプログラミングしているので、これは非常に単純な質問かもしれません。とにかく、ロゴと選択肢がランダムな順序で生成されるロゴ クイズを作成しようとしています。つまり (ロゴ 1) --- 選択肢: ABCD は最初の試行です。次にユーザーがアプリを開くと、最初にロゴ 4 が表示され、ADB C の選択肢が表示されます (それが明確であることを願っています)。ロゴをランダムに表示することはできましたが、ロゴの下の 4 つのボタンの値を変更する選択肢について同じことを行う方法がわかりません。

私が検索したものから、次のようなものを使用します:

 [btnA setTitle:@"answer" forState:UIControlStateNormal];

私の問題は、選択肢も配列に入れることを考えているので、次のようなことを試したことです。

[btnA setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];]

ロゴに対して行ったことと同様ですが、ボタンの値が得られません。私がここに欠けているものはありますか?エラーも発生しません。これは、私がやろうとしていることをよりよく説明するかもしれない私のコードの一部です:

NSMutableArray *answerList = [[NSMutableArray alloc] initWithObjects:
                               @"AnswerA",
                               @"AnswerB",
                               @"AnswerC",
                               nil];
answerArray = answerList;
int i = arc4random() % [answerArray count];
[self.btn1 setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];
[self.btn2 setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];
[self.btn3 setTitle:[answerArray objectAtIndex:i] forState:UIControlStateNormal];
4

2 に答える 2

1

このリンクを使用して、何も繰り返すことなくShuffle、あなただけbuttonTitleArrayです。MutableArraysame logo quiz

またShuffle logo quiz's choice、 とインタラクティブにすることもできabove linkます。

于 2013-01-18T09:42:56.563 に答える
1

次のコードを参照してください。100 個のセットからランダムなタイトルを生成できます。

-(int)getRandomNumber:(int)fromVal to:(int)toVal {
    return (int)fromVal + arc4random() % (toVal-fromVal+1);
}

-(void) setButtonTitle
{
    NSArray * buttonTitleArray = [NSArray arrayWithObjects:@"title1", @"title2",... @"title100", nil};
    int x = [getRandomNumber :0 :100];
    NSString * title = [buttonTitleArray objectAtIndex:x];
    [button setTitle:title :forState:UIControlStateNormal];
}
于 2013-01-18T09:47:51.913 に答える