[英]Swift3.0 I want to get object of AppDelegate
我想获得 AppDelegate 的对象。 该程序可以构建,但会因 lldb 错误而停止运行。
也许问题是 Swift2.0 和 3.0 的问题。 我的教科书是针对 swift2.0 的,但我使用的是 xcode8.0 和 Swift3.0。
错误在这里。
让 ap = UIApplication.shared.delegate as! 应用程序委托
我使用此页面进行修复。
import UIKit
class FirstViewController: UIViewController {
@IBOutlet weak var dataTextField: UITextField!
let ap = UIApplication.shared.delegate as! AppDelegate
override func viewWillAppear(_ animated: Bool) {
dataTextField.text = String(ap.cmValue)
}
@IBAction func tapInpu() {
dataTextField.resignFirstResponder()
if let text = dataTextField.text{
if let cmValue = Double(text){
ap.cmValue = cmValue
}
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
如果删除ap
初始化和ap.cmValue = cmValue
,它是否有效?
如果它确实有效,请检查您的故事板中的插座引用,您可能有旧的不存在的引用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.