【发布时间】:2019-06-17 23:01:55
【问题描述】:
很乐意协助澄清细节。我尝试通过 segue 输入应用内购买视图控制器并通过用户默认值将其关闭,但控制器不存在并且崩溃表明视图确实加载错误。因此,想澄清一下是视图加载错误还是代码问题?
override func viewDidLoad() {
super.viewDidLoad()
SKPaymentQueue.default().add(self)
if isPurchased() {
showDetails()
}
}
override func prepare (for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "subscribepage1" {
buyPremium()
} else if segue.identifier == "subscribepage2" {
buyPremium()
}
}
func isPurchased() -> Bool {
let purchaseStatus = UserDefaults.standard.bool(forKey: productID)
if purchaseStatus {
print("Previously purchased")
return true
} else { print("Never purchased")
return false
}
}
func showDetails() {
UserDefaults.standard.set(true, forKey: productID)
performSegue(withIdentifier: "gotop1", sender: self)
performSegue(withIdentifier: "gotop2", sender: self)
}
【问题讨论】:
-
很难判断是复制粘贴代码出错,还是代码有误。我认为这会帮助你更一致地适当缩进你的代码。在我看来,您在第一个函数之后缺少一个右括号。给自己找一个好的 IDE,它会让你的生活变得更轻松。
标签: ios uiviewcontroller in-app-purchase segue