ios - 显示和弹出多个 View Controller

标签 ios swift uiviewcontroller

这就是我的问题。

第一个ViewController有一些关于名称、日期、编号的字段。事件(用户创建的事件)的人员数量。它还具有一个按钮,可将用户转换到带有 mapView 的新 viewController,用户将在其中创建 Pin 图。用户创建 Pin 图后,用户可以按下该 Pin 图(或执行其他一些操作来确认用户在 map 上放置的 Pin 图是正确的),然后用户将转换到一个新的 tableViewController,附近有多个位置他选择的 Pin 图(使用 Foursquare API)。

然后用户必须转换到第一个ViewController。用户点击的位置必须发送到第一个 ViewController

这是我第一次使用多个 ViewController,我需要你的帮助。

我该怎么做(请不要错过任何细节:D)?

最佳答案

使用展开转场通过导航 Controller 中嵌入的 View Controller 向后传递数据。

这是一个简短的示例。

在你的第一个 View Controller 中,你可以有类似的东西:

var text: String?

@IBAction func unwindSegue(segue: UIStoryboardSegue) {
    if let viewController = segue.sourceViewController as? ViewController2 {
        text = viewController.textField.text
    }
    print(text!)
}

通过按住 Ctrl 键从 View Controller (带正方形的黄色圆圈)拖动到退出图标(位于 View Controller 的顶部或文档大纲中),将展开转场添加到 Storyboard 上的第二个 View Controller 中并单击您创建的展开转场以创建手动转场。然后在文档大纲中设置展开转场的标识符,以便您可以引用它(在本示例中我将其简称为“展开”)。

在第二个 View Controller (您想要从中传回的 View Controller )中添加以下内容:

@IBOutlet var textField: UITextField!

@IBAction func backButton(sender: AnyObject) {
    self.performSegueWithIdentifier("Unwind", sender: nil)
}

这个简单的示例将让您从第二个 View Controller 中的 textField 传回文本。

n.b.您一次可以展开多个 View 。

关于ios - 显示和弹出多个 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33147100/

相关文章:

ios - 如何使用带有 AFNetworking 的 POST 将图像作为参数(参数)发送

ios - 在 Google map 中绘制多个标记

ios - 应用程序未从 .plist 文件中删除一行

ios - Inout 参数没有相同的地址

swift - 成功登录

ios - 以编程方式/自动创建 ViewController

ios - 架构 arm64 错误 Xcode 7.3 的 UIFoundation 2 切片

ios - 如何使用 SwiftUI 连续呈现两个警报 View

iOS 重置重用的 ViewController 或 ASIHTTPRequest 问题?

iphone - 如何将模态视图添加到当前 View Controller 上?