J'ai ViewController, qui a un champ de texte et un bouton. L'utilisateur entre son nom dans le champ de texte et appuie sur le bouton DONE. Quand il appuie sur le bouton, il est associé à GifteeDetails, qui est un contrôleur de vue différent. Il y a une étiquette dans ce viewController qui est censé afficher son nom. Mais, son nom ne s'affiche pas. Je ne reçois pas d'erreurTransférer des données TextField entre ViewControllers
Voilà ViewController:
@IBOutlet weak var textGifteeName: UITextField!
@IBAction func toDetails(_ sender: Any) {
performSegue(withIdentifier: "toDetails", sender: nil)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let destDetails: GifteeDetails = segue.destination as! GifteeDetails
destDetails.nametext = textGifteeName.text!
destDetails.agetext = "\(Int(age)! - 2000 + 17)"
destDetails.locationstext = labelGifteeLocationsPreview.text!
destDetails.intereststext = labelGifteeInterestsPreview.text!
}
Voilà GifteeDetails:
var nametext = String()
var agetext = String()
var locationstext = String()
var intereststext = String()
@IBOutlet weak var labelGifteeName: UILabel!
@IBOutlet weak var labelGifteeAge: UILabel!
@IBOutlet weak var labelGifteeLocations: UILabel!
@IBOutlet weak var labelGifteeInterests: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
nametext = labelGifteeName.text!
agetext = labelGifteeAge.text!
locationstext = labelGifteeLocations.text!
intereststext = labelGifteeInterests.text!
}
Désolé tout le!. Swift me donne une erreur à moins que je ne les ai.
Le problème est que vous le font dans le sens inverse. Pour définir votre propriété de texte textfield dans votre méthode viewDidLoad GifteeDetails changez 'nametext = labelGifteeName.text!' En 'labelGifteeName.text = nametext', changez' agetext = labelGifteeAge.text! 'En' labelGifteeAge.text = agetext' et ainsi de suite –