整数计数器不加 Swift
Integer Counter not adding Swift
我想做的是计算用户打开特定视图控制器的次数。
- 用户第一次打开视图时int的初始值为0。
- 然后我想将 +1 添加到“计数”,然后将该数字保存在用户默认值中。
- 下次他们打开同一个视图控制器时,将调用用户默认值以将当前次数更新为他们访问该视图控制器的累计次数。
- 用户打开view controller 5次后,我会显示一个广告。
但是,“int”的声明不允许我连续添加到计数中。我必须从 0 开始,计数永远不会超过 1。这是我一直在尝试的代码。
这是我对"int"
的声明
var userOpenVC: Int = 0
这是我的代码,如果 "count" 不等于 5,则加 1 并保存在用户默认值中。
override func viewDidLoad()
{
super.viewDidLoad()
UserDefaults.standard.integer(forKey: "count")
if (userOpenVC != 5)
{
userOpenCategory += 1
UserDefaults.standard.set(userOpenCategory, forKey: "count")
}
}
override func viewWillAppear(_ animated: Bool) {
print(userOpenCategory)
//THIS WORKS
if (userOpenCategory == 5)
{
adShow.open()
}
}
好吧,您实际上从未使用过保存在 UserDefaults 中的值。这将解决它:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
userOpenVC = UserDefaults.standard.integer(forKey: "count")
if userOpenVC != 5 { ...
我想做的是计算用户打开特定视图控制器的次数。
- 用户第一次打开视图时int的初始值为0。
- 然后我想将 +1 添加到“计数”,然后将该数字保存在用户默认值中。
- 下次他们打开同一个视图控制器时,将调用用户默认值以将当前次数更新为他们访问该视图控制器的累计次数。
- 用户打开view controller 5次后,我会显示一个广告。
但是,“int”的声明不允许我连续添加到计数中。我必须从 0 开始,计数永远不会超过 1。这是我一直在尝试的代码。
这是我对"int"
的声明 var userOpenVC: Int = 0
这是我的代码,如果 "count" 不等于 5,则加 1 并保存在用户默认值中。
override func viewDidLoad()
{
super.viewDidLoad()
UserDefaults.standard.integer(forKey: "count")
if (userOpenVC != 5)
{
userOpenCategory += 1
UserDefaults.standard.set(userOpenCategory, forKey: "count")
}
}
override func viewWillAppear(_ animated: Bool) {
print(userOpenCategory)
//THIS WORKS
if (userOpenCategory == 5)
{
adShow.open()
}
}
好吧,您实际上从未使用过保存在 UserDefaults 中的值。这将解决它:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
userOpenVC = UserDefaults.standard.integer(forKey: "count")
if userOpenVC != 5 { ...