0

こんにちは私は iOS 用のカード ゲームを作っています。

これを行うには、次のコードを使用して辞書を埋めます

 cardValues = [[NSMutableArray alloc] init];



for (card1 = 1; card1 <= 13; card1++) {

    card2 = card1;

    [cardValues addObject:[NSNumber numberWithInt:card2]];
    [cardValues addObject:[NSNumber numberWithInt:card2]];
    [cardValues addObject:[NSNumber numberWithInt:card2]];
    [cardValues addObject:[NSNumber numberWithInt:card2]];
}
 dict = [[NSDictionary alloc] initWithObjects:cardValues forKeys:cardKeys];

cardvalues は NSMutableArray で、4 組のカードに対して 1 から 13 を 4 回通過します。

cardkeys は、52 枚のカードの名前が格納された NSArray です。

  cardKeys = [[NSArray alloc] initWithObjects:
@"clubace",
@"diamondace",
@"heartace",
@"spadeace",

@"club2",
@"diamond2",
@"heart2",
@"spade2",

配列を介してなど。

カードが引かれた後のルールを表示するために、カードの値を数字に一致させるのに問題があります

たとえば、ハートの 5 が描かれた場合、メッセージ ドリンクを 5 秒間表示します。他の 5 についても同様です。

私は誰かが私がこれを成し遂げる方法を教えてくれることを望んでいました.

どんな助けでも大歓迎です

ありがとうございます

4

1 に答える 1

2

PlayingCardカードのスートと値の両方を含むクラスを作成するのがより良いアプローチだと思います。その後、52 個のオブジェクトを含む 1 つの配列を作成PlayingCardできます。これらの 52 個のPlayingCardオブジェクトのいずれかを配列からランダムに取得できます (および/または配列から削除できます)。PlayingCardクラスには、カードを画面に描画するために使用できるプロパティを含めることもできUIImageます。

関連するデータを 2 つ以上の別々のコンテナーに格納している場合は、そのデータをクラスにカプセル化し、単一のコンテナーを使用してクラスのインスタンスを格納する方がよいでしょう。

于 2012-12-11T17:24:15.913 に答える