2015-07-13 119 views
0

我想在xcode中生成一個隨機數生成器ios應用程序,並且在嘗試使用rand()方法時出現錯誤我收到以下錯誤; 「int32不能轉換爲int」我試圖改變「int」爲「int32」,它給了我沒有錯誤,但因爲我沒有顯示數字。我如何解決這個問題?int32不能轉換爲int

注:我使用的語言迅速

代碼:

@IBOutlet var lblNum: UILabel! 
@IBAction func btnGenerateNum(sender: UIButton, forEvent event: UIEvent) { 
    let text: Int = rand() 

    switch(text) { 
    case 0: 
    lblNum.text = "0" 
    break; 

    case 1: 
     lblNum.text = "1" 
     break; 

    case 2: 
     lblNum.text = "2" 
     break; 

    case 3: 
     lblNum.text = "3" 
     break; 

    case 4: 
     lblNum.text = "4" 
     break; 

    case 5: 
     lblNum.text = "5" 
     break; 

    case 6: 
     lblNum.text = "6" 
     break; 

    case 7: 
     lblNum.text = "7" 
     break; 

    case 8: 
     lblNum.text = "8" 
     break; 

    case 9: 
     lblNum.text = "9" 
     break; 

    default: 
     break; 
    } 

回答

1
@IBAction func btnGenerateNum(sender: UIButton, forEvent event: UIEvent) { 

    lblNum.text = "\(arc4random_uniform(10))" 
} 
1

只需使用您的Int32初始化的詮釋:

let text: Int = Int(rand()) 
+0

我沒有得到任何錯誤,但它仍然沒有隨機化。 – Justin

+0

@Justin你應該在技術上將這個問題作爲一個單獨的問題發佈,但我會回答。它實際上是隨機的(打印它可以看到),但它可以返回最多10位數字或更長的數字......這樣比最終開關盒中的數字9更大。 –

0

這將是您更容易? (不一定是你提出的隨機數發生器問題的解決方案)

let text = String((Int(rand())) % 10) 
lblNum.text = text