问题描述
我有带有4个标签和4个goToVC按钮的mainVC,每个按钮都使用segue来显示4个VC中的另外1个。每个vc都有textField和doneButton。我想在mainVC标签中显示来自textField的文本,并且我想使用委托。但是相反,我得到了空标签。请帮忙。
Delegate.swift
const tasksDocument = await db.collection.findOne({id: 123});
let unsetArr = tasksDocument.taskIds.map(v => `tasks.${v}`);
await db.collection.updateOne({id: 123},{$unset: unsetArr});
MainVC.swift
protocol TextFieldDelegate {
func didFinishTextField(text: String)
}
RedVC(其他3个相同).swift
class MainViewController: UIViewController,TextFieldDelegate {
@IBOutlet weak var redText: UILabel!
@IBOutlet weak var orangeText: UILabel!
@IBOutlet weak var pinkText: UILabel!
@IBOutlet weak var purpleText: UILabel!
var choosenLabel: UILabel?
override func viewDidLoad() {
super.viewDidLoad()
}
override func prepare(for segue: UIStoryboardSegue,sender: Any?) {
if segue.identifier == "toRedVC" {
let vc = segue.destination as! RedViewController
vc.delegate = self
choosenLabel = redText
} else if segue.identifier == "toOrangeVC" {
let vc = segue.destination as! OrangeViewController
vc.delegate = self
choosenLabel = orangeText
} else if segue.identifier == "toPinkVC" {
let vc = segue.destination as! PinkViewController
vc.delegate = self
choosenLabel = pinkText
} else if segue.identifier == "toPurpleVC" {
let vc = segue.destination as! PurpleViewController
vc.delegate = self
choosenLabel = purpleText
}
}
func didFinishTextField(text: String) {
if let data = choosenLabel {
data.text = text
}
}
@IBAction func redButton(_ sender: UIButton) {
}
@IBAction func orangeButton(_ sender: UIButton) {
}
@IBAction func pinkButton(_ sender: UIButton) {
}
@IBAction func purpleButton(_ sender: UIButton) {
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)