我有几个按钮将userdefault设置为不同的整数。如果userdealts =特定的整数{code}
,我怎么能说"这是设置userdefault的代码:
@IBAction func one(_ sender: AnyObject) {
defaults1.set(1, forKey: "Sphere")
print("Ghost one was selected")
}
@IBAction func two(_ sender: AnyObject) {
defaults1.set(2, forKey: "Sphere")
print("Ghost two was selected")
}
答案 0 :(得分:1)
你可以使用:
if defaults1.integer(forKey: "Sphere") == 1 {
// do something
}
if defaults1.integer(forKey: "Sphere") == 2 {
// do something
}
关于matt评论的更新(如果整数键不存在,请使用可选绑定来处理):
if let sphereKey = defaults1.object(forKey: "Sphere") {
if defaults1.integer(forKey: "Sphere") == 1 {
// do something
}
if defaults1.integer(forKey: "Sphere") == 2 {
// do something
}
} else {
print("UserDefault Key 'Sphere' doesn't exist")
}
或检查是否为零(在您的情况下,您可能会更好地使用上面的可选装订中的sphereKey
):
if defaults1.object(forKey: "Sphere") != nil {
if defaults1.integer(forKey: "Sphere") == 1 {
// do something
}
if defaults1.integer(forKey: "Sphere") == 2 {
// do something
}
} else {
print("UserDefault Key 'Sphere' doesn't exist")
}
答案 1 :(得分:1)
如果您只有两个值,则应使用switch
或if, else if
或if - else
。要获得价值,只需defaults1.integer(forKey: "Sphere")
:
<强>切换:强>
switch defaults1.integer(forKey: "Sphere") {
case 1:
// 1
case 2:
// 2
default:
break
}
if - else if:
if defaults1.integer(forKey: "Sphere") == 1{
// 1
}
else if defaults1.integer(forKey: "Sphere") == 2{
// 2
}
如果您只有两个值:
if defaults1.integer(forKey: "Sphere") == 1{
// 1
}
else{
// 2
}