Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
[Swift]:通过ViewDidDisplay()关闭以前的视图控制器后,仅将新项附加到TableView的本地数组_Swift_Uitableview_Parsing_Viewdidappear - Fatal编程技术网

[Swift]:通过ViewDidDisplay()关闭以前的视图控制器后,仅将新项附加到TableView的本地数组

[Swift]:通过ViewDidDisplay()关闭以前的视图控制器后,仅将新项附加到TableView的本地数组,swift,uitableview,parsing,viewdidappear,Swift,Uitableview,Parsing,Viewdidappear,我正在使用解析服务器将数据传递给TableViewController 我能够使用parse检索数据并附加到本地数组。这些数组使用tableView。我有另一个名为PostDataViewController的ViewController,用于发布新数据。当我按下PostDataViewController上的post按钮时,我立即关闭ViewController。我调用TableViewController.modalPresentationStyle=.fullScreen以启用ViewDi

我正在使用解析服务器将数据传递给TableViewController

我能够使用parse检索数据并附加到本地数组。这些数组使用tableView。我有另一个名为PostDataViewController的ViewController,用于发布新数据。当我按下PostDataViewController上的post按钮时,我立即关闭ViewController。我调用TableViewController.modalPresentationStyle=.fullScreen以启用ViewDidDisplay()

我希望能够做到的是,在ViewDidAspect()上,只将来自parse的新数据添加到数组中。我的临时解决方案是删除所有数组中的所有数据,然后再次运行初始查询。但这似乎浪费了很多精力和金钱


谢谢:)

我通过协议/委托做了类似的事情。因此,保存所有数据的TableViewController可以从PostDataViewController附加新信息,然后重新加载tableview以刷新新发布的数据。但要从PostDataViewController获取数据,我会使用类似的方法

//使tableviewcontroller与之一致的函数
协议PostedDataDelegator{
func collectDataToParse(postedData:YourDataType)
}
//在PostDataViewController中
类PostDataViewController{
让委托人:PostedDataDelegator?
//从post按钮发送数据
函数postButtonAction(){
delegate.collectDataToParse(postedData:YourDataType)
}
}
//在TableViewController中
类TableViewController:UITableViewController,PostedDataDelegator{
//在segue函数中,可以有如下内容
覆盖函数prepareforsgue(segue:UIStoryboardSegue,sender:AnyObject?){
如果segue.identifier==“显示”
{
如果让postDataViewController=segue.destinationViewController为?postDataViewController{
postDataViewController.delegate=self
}
}
}
func collectDataToParse(postedData:YourDataType){
yourArray.append(postedData)
tableview.reloadTable
}
}
此外,我还建议您通过网络观看视频