import UIKit
class ViewController: UIViewController {
@IBOutlet var Text1: UITextField!
@IBOutlet var Text2: UITextField!
@IBOutlet var Text3: UITextField!
@IBOutlet var Label: UILabel!
let array = ["Frodo", "sam", "wise", "gamgee"]
let randomIndex = Int(arc4random_uniform(UInt32(array.count))) //Problem is here
@IBAction func button(_ sender: Any) {
Label.text = array[randomIndex]
}
}
答案 0 :(得分:0)
您没有提出任何问题,因此我认为您在访问count
的{{1}}时遇到问题。
通常,在init完成之前,您无法访问任何实例成员。 (至少)有三种解决方案可以解决您的问题。
首先是覆盖UIViewController所需的所有array
并在那里设置init
。
其次是randomIndex
使用lazy
:
randomIndex
第三是为这些数据使用一些模型(类/结构)并将其注入ViewController
答案 1 :(得分:0)
您无法运行该行来获取该类顶层的随机索引。
必须位于 函数/方法中
@IBAction func button(_ sender: Any) {
let randomIndex = Int(arc4random_uniform(UInt32(array.count)))
Label.text = array[randomIndex]
}
请遵守变量名称以小写字母(text1
,label
)开头的命名约定。