我在我的应用程序中遇到问题。从导航栏中的酒吧按钮项到另一个视图控制器的争论不会运行我的代码?
我增加了一个栏按钮项目到我的导航栏和Ctrl它拖动到另一个视图控制器进行测试时,如预期该工作。我将ctrl再次拖动,使其在自己的VC中添加一个Action并添加了代码。
我要当按下它,以及执行SEGUE但只有SEGUE恰好发生什么。如果我删除了segue,那么代码将运行,但我无法像我期待的那样同时工作。
这里是我的代码:
import UIKit
import CoreData
class NewClientViewController: UIViewController, UITextFieldDelegate {
var managedObjectContext: NSManagedObjectContext!
@IBOutlet weak var nameTextField: UITextField!
@IBOutlet weak var ageTextField: UITextField!
@IBOutlet weak var telephoneTextField: UITextField!
@IBOutlet weak var emailTextField: UITextField!
@IBOutlet weak var heightTextField: UITextField!
@IBOutlet weak var weightTextField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
managedObjectContext = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
}
// Dismiss keyboard when empty space tapped
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
nameTextField.endEditing(true)
ageTextField.endEditing(true)
telephoneTextField.endEditing(true)
emailTextField.endEditing(true)
heightTextField.endEditing(true)
weightTextField.endEditing(true)
}
// Dismiss keyboard when return tapped
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
@IBAction func saveButton(_ sender: Any) {
let clientItem = Client(context: managedObjectContext)
clientItem.name = nameTextField.text
clientItem.age = ageTextField.text
clientItem.telephone = telephoneTextField.text
clientItem.email = emailTextField.text
clientItem.height = heightTextField.text
clientItem.weight = weightTextField.text
do
{
try self.managedObjectContext.save()
print("Successfully Saved!")
}
catch
{
print("Could not save data \(error.localizedDescription)")
}
}
}
给该标识符来原因请看并使用prepareForSegue方法和代码的执行之后执行SEGUE –