准备segue不发送所有信息(Swift)

时间:2015-12-21 20:50:57

标签: ios swift uitableview uiviewcontroller segue

尝试将String个变量传递给新的ViewController时,只会发送其中一个变量。我不确定这里发生了什么,因为当我打印object["eventDescription"]时,控制台确实打印了描述。只有eventName被传递给新的视图控制器。

发送视图控制器

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

    if(segue.identifier == "detailSegue") {
        if let destination = segue.destinationViewController as? EventDetailViewController {
            if let eventIndex = self.tableView.indexPathForCell(sender as! FeedCustomCell) {
                var object = self.eventsArray[eventIndex.row]

                destination.nameText = object["eventName"] as! String
                destination.descriptionText = object["eventDescription"] as! String
                print(object["eventDescription"])

目标视图控制器(EventDetailViewController):

class EventDetailViewController: UIViewController {

    @IBOutlet weak var eventName: UILabel!
    @IBOutlet weak var descLabel: UILabel!

    var descriptionText = String()
    var nameText = String()

    override func viewDidLoad() {
        super.viewDidLoad()

        self.eventName.text = nameText
        self.descLabel.text = descriptionText
    }
}

1 个答案:

答案 0 :(得分:0)

很抱歉浪费任何人的时间,但我不得不在EventDetailController中的描述UILabel上放置约束,然后我就能看到描述。