我正在尝试完成本教程:https://cocoacasts.com/implement-the-nsfetchedresultscontrollerdelegate-protocol-with-swift-3
但我发现他使用Storyboard
和segues
在ViewControllers
之间移动数据。然而,我找不到一种正确而安全的方法来从一个UIViewController
和另一个present()
移动数据。
每个人总是瞎扯'哦,你只需要一个代表和协议' 或'使用单身' 或 '请不要使用单身人士。我在协议和代表阅读的最后六个小时内找到的只是婚礼,小狗和坦克的表面例子,但没有一个正确的方法来做到这一点。 我唯一能找到的是Objective-C,我很遗憾地不读或写。即使Stackoverflow上提出相同问题的问题也没有答案,因为解释通常含糊不清,而且在'我这样做是因为它有效,你也应该这样做就像这样。它现在有效。' ,没有进一步说明。
现在使用dismiss()
函数向VC移动很容易,但向后是真正的问题,因为当你使用popViewController()
或{{<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
</head>
<body>
<div class='modal'>
<div class='content'>
<div class="row" style="padding: 15px;">
<div class="dropdown">
<div class="dropbtn">
<a class="work">Works</a>
</div>
<div class="row inside-link">
<div class="row">
<div class="col-4">
<a href="portofolio/video/video.html">Video</a>
</div>
<div class="col-4">
<a href="portofolio/photography/photography.html">Photo</a>
</div>
<div class="col-4">
<a href="portofolio/graphics/graphics.html">Graphics</a>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<a href="about.html">About</a>
</div>
<div class="row">
<a href="contact.html">Contact</a>
</div>
<script>
$(function () {
$(".row.inside-link").hide();
$(".dropdown").hover(function () {
$(".row.inside-link").slideDown();
}, function () {
$(".row.inside-link").slideUp();
});
});
</script>
</body>
</html>
时,同样的技巧并不起作用1}}。
我无法在具有委托和协议的VC之间找到适当的方式来移动数据(如教程中的NSManagedObjectContext对象)。
当然,我并不是唯一一个想知道的人,并且对一些示例代码的不同方式的一个很好的解释对我而言也比对我有帮助。
所以我的问题仍然存在:如何在没有Storyboard的情况下在viewControllers之间移动信息,在Swift中没有Segues?如果代表和协议是答案,那么正确的方法是什么?
编辑:它与此主题的其他问题(Passing Data between View Controllers)不同,因为这个问题在Swift中提出,而不是在Objective-C中提出