有没有办法在prepareForSegue被称为

时间:2016-12-02 00:32:04

标签: ios model-view-controller segue

我正在开发一个应用程序,它使服务器调用获取一个数组并将其显示在表视图中。 该应用程序在导航控制器内部有两个视图控制器(让它们称为VC1和VC2),因此VC1会切换到VC2。 VC1从用户获取输入并验证shouldPerformSegueWithIdentifier中的输入。 如果有效且在prepareForSegue内,VC1使用destinationVC调用VC2方法,该方法从服务器检索数组并将其显示在表视图中。

现在我面临的问题是返回的数组可能是空的,我最终显示一个空表。

我可以阻止显示空表,还是应该在VC1中的shouldPerformSegueWithIdentifier中调用服务器并完全停止segue?我很困惑,因为数组是VC2的模型,因此从VC1启动服务器调用以检索属于VC2模型的数据似乎很奇怪。有没有办法在prepareForSegue被调用后停止segue?

1 个答案:

答案 0 :(得分:1)

UIKit在调用shouldPerformSegueWithIdentifier:sender:之前调用委托方法prepareForSegue:sender:如果数组为空,则从此方法返回NO。