ios - 如何从另一个 ViewController (Swift) 访问 UITextField 中的文本?

标签 ios swift uitextfield

我在一个 ViewController 上有一个 UITextField,我希望能够在第二个 ViewController 上有一个标签 = 无论用户输入什么。

但是,我在尝试执行此操作时遇到错误。我知道 Swift 不使用 import,所以我不确定该怎么做。

// First View Controller

 @IBOutlet weak var textOne: UITextField!

// Second View Controller

    @IBOutlet weak var theResult: UILabel!

theResult.text = textOne.text

错误:未解析的标识符

最佳答案

看起来您实际上只想访问 UITextField 中的文本,而不是字段本身。因此,您应该使用 prepareForSegue 将文本从第一个 ViewController 发送到第二个 ViewController。

但在此之前,您必须设置您的 segue 名称,以便 Swift 知道要发送哪些数据:

enter image description here

如您所见,我们将 segue 命名为 segueTest

现在我们可以在 FirstViewController 中实现 prepareForSegue 方法并设置应该发送给第二个的数据。

override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
    if (segue.identifier == "segueTest") {
        var svc = segue!.destinationViewController as secondViewController;

        svc.theText = yourTextField.text

    }
}

要做到这一点,您当然必须在 SecondViewController 中设置一个变量:

var theText:String!

关于ios - 如何从另一个 ViewController (Swift) 访问 UITextField 中的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32234811/

相关文章:

ios - 如何等到委托(delegate)方法被调用?

ios - 全局设置特定时区供应用程序使用

ios - MapBox iOS SDK 框架

ios - 输入键盘按键时 UITextField 不更新

ios - 对两个文本字段使用相同的 UIDatePicker

javascript - 选择非输入元素时,强制焦点在 iOS 中使用 jQuery 离开表单字段

ios - 我应该对稍后变异的对象使用 var 或 let 吗?

ios - 后退按钮显示在 Root View Controller 上

ios - 使用 pod 时没有生成 xcworkspace

ios - 无法选择 UITextField