gpt4 book ai didi

swift - 使用#selector后,Swift Button崩溃

转载 作者:行者123 更新时间:2023-12-02 07:31:22 26 4
gpt4 key购买 nike

我设法使文本字段验证正常工作,除非文本框字段中有文本,否则不允许添加按钮处于 Activity 状态。

但是,现在当我按下添加按钮时,应用程序崩溃了。

我做了一些研究,由于以下原因,它看起来像是这样:

calarieSubmit.addTarget(self,action:#selector(calarieSubmitDidChange),for:.editingChanged)

然后将代码放置在内存中的其他位置,并且无法通过添加按钮进行访问。
如果我将#selector代码从 View 中移出并确实加载到了 Controller 的顶部,则不会看到calariesSubmitDidChange文本框。

enter image description here

enter image description here

有谁知道需要在哪里放置代码以防止崩溃,或者是否需要重写代码?

谢谢!

**更新-很抱歉没有将代码复制到其中,我现在在下面进行了此操作:

import UIKit
import Firebase

class ItemToAddViewController: UIViewController {
var finalName = ""

override func viewDidLoad() {
super.viewDidLoad()

addButton.isEnabled = false

show.text = "\(finalName)"

calarieSubmit.addTarget(self, action: #selector(calarieSubmitDidChange), for: .editingChanged)

}

@IBOutlet weak var button: UIButton!

@IBOutlet weak var show: UILabel!

@IBOutlet weak var calarieSubmit: UITextField!

@IBAction func calarieSubmitDidChange(_ sender: Any) {

//Validate Input Button

// print("\(calarieSubmit.text!)")

if calarieSubmit.text!.isEmpty {
addButton.isEnabled = false
} else {
addButton.isEnabled = true
}

}


@IBOutlet weak var addButton: UIButton!

@IBAction func addButton(_ sender: Any) {

let input = calarieSubmit.text

//Send New Item to Database

var ref: DatabaseReference!
ref = Database.database().reference()

ref.child("items").updateChildValues((["\(finalName)": "\(input!)"]))

let alert = UIAlertController(title: "Added!", message: "Item now added!", preferredStyle: .alert)
alert.addAction(UIAlertAction(title: NSLocalizedString("Return", comment: "Default action"), style: .default, handler: { (action) -> Void in
_ = self.navigationController?.popViewController(animated: true)

}))

self.present(alert, animated: true, completion: nil)




//Move in once added or show error

}
}

我尝试了下面的所有操作,并在函数前面添加了@objec,但没有运气。每次按下添加按钮,应用都会崩溃。但是,数据仍会传递到数据库,然后在UIAlertController上崩溃。

最佳答案


 @objc func calarieSubmitDidChange(_ sender:UITextField)

关于swift - 使用#selector后,Swift Button崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60993730/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com