我正在制作一个下载排队系统来下载视频。处理下载的排队代码在另一个 View Controller 中。现在我的问题是如何将下载的 URL 传递给另一个 View 而不像这样推送到另一个 View Controller :
ViewConntroller *View = [[ViewConntroller alloc] init];
view.url = ""
[self presentModalViewController:View animated:NO];
我也知道有一种方法可以通过委托(delegate),但您是否也必须权衡才能调用 View ?
编辑
我有一个 NSURL
,我想在其中发送到另一个 viewconntroller。我知道有协议(protocol)的方法或上面的方法。但是我不想提供一个 viewconntroller 来发送信息。我只想在按下按钮后立即发送它,而无需转到 View 本身
最佳答案
I do not want to present a viewconntroller to send the info. I just want to send it as soon as the button is pressed without going to the view itself
通常,您不能这样做:您可以将数据发送回 View Controller 链,但只有当您呈现要向其发送数据的 View Controller 时,才有可能将数据向前发送。
您需要采用不同的方法来解决您的问题:与其将信息转发到另一个 View Controller ,不如将该数据发送到一个公共(public)位置,以便另一个 View Controller 在显示后可以找到它。这个“公共(public)场所”通常被称为模型(在模型- View - Controller 的意义上)。使用 URL 队列创建一个单例对象,并从第一个 View Controller 调用其 addUrl:
方法。然后,第二个 View Controller 可以调用 getUrlQueue
方法来检查所有排队的 URL。
关于ios - 如何将数据从一个 View 传递到下一个 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20640102/