我正在构建一个向用户呈现 UITableView 的应用程序,用户需要从中进行选择。一旦选择了一行,他们就会出现另一个 ViewController,其中显示了他们在前一个 ViewController 上所做选择的详细信息。
这里有一个问题:在用户做出选择后,应用程序需要调用网络来检索一些要显示在下一个 ViewController 上的数据。我打算从 prepareForSegue 方法中调用一个方法,该方法将从网络调用中返回结果,然后调用适当的 ViewController,但我想知道这是否应该从“didSelectRowAtIndexPath”方法(我尚未实施)。
我担心第二个 ViewController 会在对网络的调用返回我需要显示的数据之前被调用。这甚至是放置此类网络调用的地方,还是应该从目标 ViewController 的“viewDidLoad”方法进行调用?什么是最好的架构,为什么?
在didSelectRowAtIndexPath方法中调用prepareForSegue方法导航到 secondViewController 然后显示详细信息,在secondViewController 的viewDidLoad方法中进行网络调用并显示activityIndicatorView直到获取数据。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句