我有两个viewController,分别名为vcA和vcB。vcA有navigationController,而vcB只是viewController,没有navigationController。我将文本数据保存在vcB的一个文件中,我希望在调用dismiss方法后返回vcA时在vcA中显示文本。我认为在调用dismiss后重新加载vcA是显示文本的正确方式,但我发现在vcA和vcB之间这样做可能比较困难,因为vcA有navigationController,而vcB没有navigationController。
3条答案
按热度按时间e0bqpujr1#
你可以用self.present代替self.dissifs,就像这样:
设vc = vcA()
VC.模式演示文稿样式= .全屏
自我呈现(VC,动画:false,完成:无)
svdrlsy42#
您可以使用protocol/delegate模式将值传回给呈现视图控制器。以下是一个示例,说明如何将
vcB
中的文本字段中的文本传递给vcA
,因为vcB
正在被解除,所以您可以用要传递的值来替换它。7ivaypg93#
为此我遵循的方法是:
在vcB中,我添加了:
internal var senderVC: UIViewController?
在vcA中,我添加了:
vcB.senderVC = self
在vcB中,我添加了:
if let firstVC = self.senderVC as? vcA { firstVC.tableView.reloadData(); }