Swift,将数据从弹出窗口传回视图控制器
Swift, Pass data back from popover to view controller
我已经在弹出框控制器中对原始数组进行了排序。现在我想将该数组发送回表视图和地图视图的原始视图控制器。
下面是我的代码
If propertyNameSrt == false
{
if ascSorting == false
{
properties.sort(sorterForbuildingAsc)
}
else
{
properties.sort(sorterForbuildingDesc)
}
}
我的数组是包含自定义对象的属性。
如何将其传递给我的原始视图控制器?
提前致谢,
达瓦尔
您可以使用委托(协议)方法将数据发送回之前的视图控制器。
当前 VC:
protocol MyProtocol: class
{
func sendArrayToPreviousVC(myArray:[AnyObject])
}
在您的 class.
中创建一个变量
weak var mDelegate:MyProtocol?
现在,当您弹出视图控制器时调用协议方法,使用您的 "properties" 数组作为参数。
mDelegate?.sendArrayToPreviousVC(properties)
在上一个VC中:
在您之前的 VC 中,将 mDelegate 属性 设置为 self,当您推送当前 VC.
currentVC.mDelegate = self
//PUSH VC
现在实现你之前VC中的协议方法。
func sendArrayToPreviousVC(myArray:[AnyObject]) {
//DO YOUR THING
}
我已经在弹出框控制器中对原始数组进行了排序。现在我想将该数组发送回表视图和地图视图的原始视图控制器。
下面是我的代码
If propertyNameSrt == false
{
if ascSorting == false
{
properties.sort(sorterForbuildingAsc)
}
else
{
properties.sort(sorterForbuildingDesc)
}
}
我的数组是包含自定义对象的属性。 如何将其传递给我的原始视图控制器? 提前致谢, 达瓦尔
您可以使用委托(协议)方法将数据发送回之前的视图控制器。
当前 VC:
protocol MyProtocol: class
{
func sendArrayToPreviousVC(myArray:[AnyObject])
}
在您的 class.
中创建一个变量weak var mDelegate:MyProtocol?
现在,当您弹出视图控制器时调用协议方法,使用您的 "properties" 数组作为参数。
mDelegate?.sendArrayToPreviousVC(properties)
在上一个VC中:
在您之前的 VC 中,将 mDelegate 属性 设置为 self,当您推送当前 VC.
currentVC.mDelegate = self
//PUSH VC
现在实现你之前VC中的协议方法。
func sendArrayToPreviousVC(myArray:[AnyObject]) {
//DO YOUR THING
}