2017-02-14 48 views
2
import UIKit 

class ViewController: UIViewController { 

@IBOutlet weak var username: UITextField! 

@IBAction func loginPressed(_ sender: Any) { 

    print("Username entered is \(username.text)") 

    let displayViewController = storyboard?.instantiateViewController(withIdentifier: "DisplayViewController") as! DisplayViewController 

    displayViewController.usernameEntered = username.text 

    self.navigationController?.pushViewController(displayViewController, animated: true) 

} 

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 
} 

我试图将此数据“用户名”转移到另一个视图控制器。我已经大部分工作正常,但有上displayViewController.usernameEntered = username.text当试图开始从一个视图控制器到另一个视图控制器的数据传输时获取断点错误

断点错误这里是我的其他视图控制器代码:

import UIKit 

class DisplayViewController: UIViewController { 

var usernameEntered:String? 

@IBOutlet weak var usernameLabel: UILabel! 


override func viewDidLoad() { 
    super.viewDidLoad() 

    // Do any additional setup after loading the view. 
} 

override func viewDidAppear(_ animated: Bool) { 
    super.viewWillAppear(animated) 

    if let usernameToDisplay = usernameEntered 
    { 
     self.usernameLabel.text = usernameToDisplay 
    } 

} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

} 

任何见解,为什么发生这种情况,将不胜感激!

+0

你面对的错误 –

+1

你的'username.text'可能为零。你有没有先检查它的价值?尝试在其中添加一个可选的绑定 – KrishnaCA

+1

您是否已将'usernameLabel'连接到故事板中的文本字段? – Paulw11

回答

2

检查username.text不应该nil

&确保你从故事板连接usernameEntered标签出口。

相关问题