【问题标题】:Unable to Read Data (for textfield)无法读取数据(用于文本字段)
【发布时间】:2019-01-06 19:51:46
【问题描述】:

我正在尝试将文本字段字符串的值存储到 Firebase,但调试器显示“无法读取数据(字符串)”。这是我的代码。

@IBAction func btnSelect(_ sender: Any) {
    var Description: String = TextField.text ?? ""
}

【问题讨论】:

  • 变量名使用小写。
  • 你的问题不是很清楚。我建议您在 Xcode 中发布相关的屏幕截图,在调试器中显示该问题。

标签: swift textfield


【解决方案1】:

尝试先在 viewDidLoad() 之外声明 Description,然后在函数 btnSelect() 中对其进行初始化

我创建了一个不使用故事板的示例,它正在工作

let TextField : UITextField = {
    let txt = UITextField()
    txt.text = "Hello World"
    return txt
}()

var Description: String?


override func viewDidLoad() {
    btnSelect()
}

func btnSelect() {
    Description = TextField.text
    print(Description)
}

如果这对您不起作用,那一定与您初始化 TextField 的方式或您的故事板有关。

【讨论】:

  • so var betDescription: String in viewDidLoad() and var betDescription = betTextField.text ?? “”在 btnSelect 中?
  • 谢谢!它在调试器中为我提供了一个字符串作为视图控制器描述的“值”。但是当我使用 ViewController.Description 时? “”在另一个视图控制器中我得到了零。你知道如何解决这个问题吗?
  • 不客气! :) 要从另一个 viewController 获取值,您有几个选择。一种是使用 UserDefaults。要设置数据,请使用:UserDefaults.standard.set(Description, forKey: "Description")。要从下一个视图控制器获取数据,请使用以下行: UserDefaults.standard.string(forKey: "Description")
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多