私は、テキストフィールドとボタンを持つViewControllerを持っています。ユーザは、テキストフィールドに自分の名前を入力し、完了ボタンを押す。彼がボタンを押すと、別のView ControllerであるGifteeDetailsに縫い込まれます。彼の名前を表示するはずのラベルがそのviewControllerにあります。しかし、彼の名前は表示されません。私はエラーを受け取りません。ViewController間でTextFieldデータを転送
ここでのViewControllerです:すべてについては申し訳ありません
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!
}
:
@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!
}
はここGifteeDetailsです!。私がそれらを持っていない限り、Swiftは私に誤りを与える。
問題はあなたということです反対の方法でそれをやっている。 GifteeDetailsのviewDidLoadメソッド内でテキストフィールドのプロパティを設定するには、 'nametext = labelGifteeName.text!'を 'labelGifteeName.text = nametext'に変更し、' agetext = labelGifteeAge.text! 'を' labelGifteeAge.text = agetext'に変更します。 –