激活开关时用文本填充文本字段
Filling textfields with text when a switch is activated
当我打开开关时,我试图用存储在其他页面之一的 NSUserDefaults 变量中的文本填充文本字段。当我打开开关时,我收到 "unrecognized selector sent to instance" 的错误消息。这是我的代码,它给我错误。 gamesListText 是我已经有数据的 NSUserDefaults 变量。
@IBAction func switchActivated(sender: AnyObject) {
if switch.on {
gameSearchLabel.text = gameListText
}
}
我看过其他遇到此错误的人,但其中 none 确实适用于我的特定情况,而且它们都是非常过时的问题。
将您的插座重命名为 switch
以外的名称。 Swift 认为您正在尝试定义 switch
statement.
@IBOutlet weak var switchOutlet: UISwitch!
@IBAction func switchAction(sender: AnyObject) {
if switchOutlet.on {
println("switch is ON")
}
else {
println("switch is OFF")
}
}
此外,当 setting/getting 你的 NSUserDefaults
时你应该使用 stringForKey
而不是 objectForKey
因为你是 setting/getting 一个 String
类型.
@IBAction func switchActivated(sender: UISwitch) {
if sender.on {
gameSearchLabel.text = gameListText
}
}
在你的 viewDidLoad
gamesListText = NSUserDefaults.standardUserDefaults().stringForKey("gamesListText") ?? ""
当我打开开关时,我试图用存储在其他页面之一的 NSUserDefaults 变量中的文本填充文本字段。当我打开开关时,我收到 "unrecognized selector sent to instance" 的错误消息。这是我的代码,它给我错误。 gamesListText 是我已经有数据的 NSUserDefaults 变量。
@IBAction func switchActivated(sender: AnyObject) {
if switch.on {
gameSearchLabel.text = gameListText
}
}
我看过其他遇到此错误的人,但其中 none 确实适用于我的特定情况,而且它们都是非常过时的问题。
将您的插座重命名为 switch
以外的名称。 Swift 认为您正在尝试定义 switch
statement.
@IBOutlet weak var switchOutlet: UISwitch!
@IBAction func switchAction(sender: AnyObject) {
if switchOutlet.on {
println("switch is ON")
}
else {
println("switch is OFF")
}
}
此外,当 setting/getting 你的 NSUserDefaults
时你应该使用 stringForKey
而不是 objectForKey
因为你是 setting/getting 一个 String
类型.
@IBAction func switchActivated(sender: UISwitch) {
if sender.on {
gameSearchLabel.text = gameListText
}
}
在你的 viewDidLoad
gamesListText = NSUserDefaults.standardUserDefaults().stringForKey("gamesListText") ?? ""