2016-12-01 71 views
3

我制作了自定义TableCell,并将Tableview添加到UIViewController。我想将数据从一个视图(UITableViewController)发送到UIViewController,其中我已实施tableView。我收到此错误:发送数据时出错

error

+0

请正确描述。我很困惑你在说什么,并附上其他代码。 –

+0

如上图所示,我在将数据从一个视图发送到另一个视图时遇到特定错误。我想要发送的数据是NSArray数据类型。 – Ronit

回答

0

在你Storyboard你Segue公司连接,因为你得到发件人为UITableViewCellUITableViewCellViewController之间。要解决这个问题,只需删除该Segue并创建一个从源ViewController到目的地ViewController并设置相同的segue标识符后,一切都将以您想要的方式工作。

+0

我正在从UITableViewController发送数据到UIViewController Named BookingHistoryViewController。 BookingHistoryViewController是UIView的类,其中我添加了表视图使CustomCells和CustomCell我已经使用BookingHistoryTableViewCell,你可以看到,在方法prepareForSegue – Ronit

+0

@Ronit我在说的是,在故事板你的segue连接beteween tableCell和ViewController,而不是你需要在两个ViewController之间创建的。 –

+0

感谢您的帮助 – Ronit

0

您的问题尚不清楚。虽然我给你想法。 您必须使用关闭,委托或通知模式

假设我从view1 to view2发送消息。使用简单的过程发送数据。但是,如果从view2发送到VIEW1 - >在封闭view2: - >定义的盖,

var sendDataToBackController: ((String)->())? 

@IBAction func DataSendFrom2ndVCTo1stVC(_ sender: AnyObject) { 
      if let handler = sendDataToBackController{ 
       handler("Message From ViewController3 to ViewController2") 
       } 


      _ = self.navigationController?.popViewController(animated: true) 
     } 
    } 

view1: - >

if let vc = self.storyboard?.instantiateViewController(withIdentifier: "ViewController2") as? ViewController2{ 
       vc.dataFrom1StVC = "message send from 1st VC" 
        vc.sendDataToBackController = { 
       message in 
       print(message) 
       }     
       self.navigationController?.pushViewController(vc, animated: true) 
      } 
     } 

请拨打封口即将上面的过程,即将数据从view2传回view1,并在上面尽快创建view2实例。我只给出主意。如果你想获得详细的代码,那么请给你详细的问题。 希望它能帮助你。

+0

非常感谢您的帮助,您可以告诉我如何添加代码,因为stackOverFlow不会输入太多字符 – Ronit

+0

您可以像在stackOverFlow中一样添加代码。如果您想标记上面写的代码,首先将代码写入答案框,就像您写的那样,然后选择您想要标记的代码并按(控制+ K)键。如果我的回答对你有帮助,那么请检查我的答案,并注意。如果有任何困惑,然后问我。谢谢 –