繁体   English   中英

在Swift中无法获取UITextField的.text属性-错误:“实例成员'textFieldName'无法用于类型'ViewController'

[英]Cannot get .text Property of UITextField in Swift — Error: "Instance member 'textFieldName' cannot be used on type 'ViewController'

我要做的就是从main.storyboard上的UITextField对象获取文本输入。 这两个@IBOutlet对象都显示它们已链接到正确的文本字段对象。 但是,当我尝试使常量meenieOneText成为meenieOne UITextField的.text属性的值时,出现错误消息“实例成员'meenieOne'无法用于'ViewController'类型。

我真的很陌生,所以我可能会做一些简单的完全错误的事情,但是我很聪明,因为它对我来说看起来很对。

任何帮助深表感谢。

提前致谢!

import UIKit

class ViewController: UIViewController, UITextFieldDelegate {

    @IBOutlet weak var meenieOne: UITextField!
    @IBOutlet weak var meenieTwo: UITextField!

    let meenieOneText: String = meenieOne.text

尝试以下方法:

var meenieOneText: String = ""

override func viewDidLoad() {
  super.viewDidLoad()
  meenieOneText = meenieOne.text!
}

您有一个问题,因为在iOS中,情节提要元素虽然可以访问,但在您尝试访问其属性时可能尚未初始化(例如,用户无法看到它们)。 确保元素初始化的最简单方法是,在viewDidLoad()之后访问它们。 还有其他阶段,例如“ viewDidDisappear”等。 在此处查看有关ViewController的Apple文档: https : //developer.apple.com/library/ios/documentation/UIKit/Reference/UIViewController_Class/

您不能在类中直接使用UITextField属性。 在任何函数中编写相同的代码。 它的工作正常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM