将 String/Object 值传递给另一个 ViewController

Passing a String/Object value to another ViewController

我正在打开另一个 ViewController 使用这个:

let mainStoryboard: UIStoryboard = UIStoryboard(name:"Main", bundle:nil)
let homeViewController: UIViewController = mainStoryboard.instantiateViewController(withIdentifier: "IssueViewController")
self.present(homeViewController, animated: true, completion: nil)

除此之外,我还需要将一个 Person 对象和一个 String 值传递给第二个 ViewController。

struct Person {
  var Name: String
  var Details: String
}

我需要做哪些更改才能将 Person 对象附加到现有代码?

编辑:这是第二个 ViewController

我正在尝试从此视图中检索值

class IssueViewController: UIViewController {

    var person: Person = Person();

    override func viewDidLoad() {
        super.viewDidLoad()

    }

}

//第一个控制器的变化

let mainStoryboard: UIStoryboard = UIStoryboard(name:"Main",bundle:Bundle.main)
let homeViewController: IssueViewController = mainStoryboard.instantiateViewController(withIdentifier: "IssueViewController") as! IssueViewController
homeViewController.person = Person(Name:"ABC",Details:"XYZ")
homeViewController.bindWithData(yourStringObject)
self.present(homeViewController, animated: true, completion: nil)

//第二个视图控制器的变化

class IssueViewController: UIViewController {

var person: Person = Person(Name:"",Details:"");

override func viewDidLoad() {
    super.viewDidLoad()
    print(person.Name)
    print(person.Details)
}
func bindWithData(yourStringObject:String){
//your code here.
}
}