2016-12-22 14 views
0

次のコードは信号機のように動作します。赤 - >黄 - >緑。どうすれば "else if timerInt == 0 {" r.pngかyellow.pngのいずれかが出てきます。基本的にコインが反転し、rまたは黄色のいずれかが表示されます。しかし、チャンスは均等で常にランダムです。ありがとうございますランダム化されたelse文を作成する方法swift 3

timerInt -= 1 
    if timerInt == 2{ 
     light.image = UIImage(named: "r.png") 
    } else if timerInt == 1 { 
     light.image = UIImage(named: "yellow.png") 
    } else if timerInt == 0 { 
     light.image = UIImage(named: "g.png") 
    } 

答えて

2

if timerInt == 0ブロック内に別の条件を追加します。この文は、ここに0とupperBound

light.image = UIImage(named: arc4random_uniform(2) == 0 ? "r.png" : "yellow.png") 

間の乱数を生成arc4random_uniform(upperBound)を、使用する場合、私は、三項演算子を使ってif文をインライン化。条件が満たされている場合、最初の式が評価されます。そうでない場合は、後の式が使用されます。

+0

私は以下のように書いています: 'light.image = UIImage(名前:arc4random_uniform(2)== 0?" r ":" yellow ")' – rmaddy

+1

¯\ _(ツ))/確かにリソース名前空間にこれらのイメージがあるので、 'light.image = arc4random_uniform(2)== 0? Resource.Image.redLight:Resource.Image.yellowLight'。しかし、ええ、ここにはおそらく意味があります。 – tomahh

関連する問題