想澄清一下是视图加载错误还是代码问题?
Posted
技术标签:
【中文标题】想澄清一下是视图加载错误还是代码问题?【英文标题】:Would like to clarify if it is the view did load error or is it the code problem? 【发布时间】: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,它会让你的生活变得更轻松。 【参考方案1】:只有你的代码有问题,当你调用 showDetails() 方法同时执行两个 segues 时
performSegue(withIdentifier: "gotop1", sender: self)
performSegue(withIdentifier: "gotop2", sender: self)
验证/添加这两行的条件,“gotop1”或“gotop2”。
【讨论】:
您好 Komara,感谢您的建议。我尝试将它们分开,但仍然无法连接或使视图控制器按我希望的方式运行。您建议对这些行进行什么验证或添加什么? 我想先知道一件事,你还遇到同样的错误吗?如果不让我知道你希望如何工作。 我希望使用 segue(在应用程序中购买)显示视图控制器,然后关闭该视图(同时添加用户默认值)。问题似乎是在我点击按钮(signet 1 错误)后视图不会加载。感谢您的帮助 Komara :) 感激不尽以上是关于想澄清一下是视图加载错误还是代码问题?的主要内容,如果未能解决你的问题,请参考以下文章
VS2010 WPF 加载不了设计视图的问题,代码是正常的,但是视图加载不出来