所以我正在创建一个iOS应用程序,它允许您将文本输入到TextBox中,然后有一个Button将在标签上显示“Text”,并且标签上的“Text”将显示在通知中心,在小部件上,但出现问题因为每次我运行应用程序时它都会失败并引导我进入END{print""}
并突出显示这个特定部分:“AppDelegate.Swift
”
错误显示“主题1:信号SIGABRT”
我不知道还能做什么;(请帮助!!
这是ViewController.Swift代码:
class AppDelegate: UIResponder, UIApplicationDelegate {
以下是TodayView控制器代码(小部件中的代码):
import UIKit
class ViewController: UIViewController {
@IBOutlet var UserInput: UITextField!
@IBOutlet var TextDisplay: UILabel!
@IBAction func DisplayButton(sender: AnyObject) {
let Text:String = UserInput.text!
if let Text = Int(Text) {
print("Computer says no!")
} else {
TextDisplay.text = (Text)
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let SharedDefaults = NSUserDefaults(suiteName: "group.St33v3n.TextOnWidget")
SharedDefaults?.setObject(UserInput, forKey: "StringKey")
SharedDefaults?.synchronize()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
答案 0 :(得分:1)
在第
行SharedDefaults?.setObject(UserInput, forKey: "StringKey")
您正在传递UITextField对象,而不是文本。你应该使用
SharedDefaults?.setObject(UserInput.text, forKey: "StringKey")
我不确定这是否会导致崩溃,但无论如何都需要纠正;)