好的,这可能是有史以来最基本的问题之一,但是我发现的所有答案都使用情节提要来声明标签,文本字段或任何需要更改的元素的出路。但是,我不使用情节提要板,也不用代码编写所有内容。现在,我有一个功能setupViews,在其中定义了一个文本字段:
let usernameInput = UITextField()
现在,我可以在setupViews()类中完美地设置文本或占位符,但是如何在外部访问它呢?例如,如果我有一个函数logIn(),我想调用usernameInput.text并在此函数中使用它。
有人可以指出我正确的方向吗?我是否需要在另一个文件或其他文件中全局声明此文本字段?
答案 0 :(得分:0)
在代码中创建视图时,我总是将属性与具有所有这些不同显示值的视图相关联。
我尚未测试此代码以查看,但希望以下内容可以给您一个想法。
import UIKit
struct {
var name: String
}
class CustomViewController : UIViewController {
// some struct which contains data for view
var customViewData : ViewDataInfo? {
didSet {
labelOnScreen.text = customViewData.name
}
}
var labelOnScreen: UILabel = {
let label = UILabel()
label.text = "Placeholder information..."
// stuff auto layout
label.translateAutoresizingMaskIntoConstraints = false
return label
}()
override func viewDidLoad() {
super.viewDidLoad()
setupView()
}
private func setupView() {
view.addSubview(label)
// set your constraints here
}
}