Я знаю, что это может быть основной вопрос, но я новичок в Swift.Кроме того, я пробовал различные решения на SO, но не смог решить проблему.Так что, если кто-то может помочь мне с моей проблемой.
У меня есть пользовательский класс UIVIEW следующим образом:
class SearchTextFieldView: UIView, UITextFieldDelegate{
public var searchText = UITextField()
override init(frame: CGRect) {
super.init(frame: frame)
initializeUI()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
initializeUI()
}
func initializeUI() {
searchText.placeholder = "Enter model no"
searchText.backgroundColor = UIColor.white
searchText.textColor = UIColor.darkGray
searchText.layer.cornerRadius = 5.0
searchText.delegate=self
self.addSubview(searchText)
}
override func layoutSubviews() {
searchText.frame = CGRect(x: 20.0, y: 5.0, width: self.frame.size.width - 40,height : self.frame.size.height - 10)
}
}
Теперь я хочу установить текст в текстовое поле SearchText из другого класса, который выглядит следующим образом:
override func viewDidLoad() {
super.viewDidLoad()
setupUI()
// Do any additional setup after loading the view.
}
func setupUI() {
let searchTextFieldView = SearchTextFieldView()
self.view.addSubview(searchTextFieldView) //adding view containing search box view at the top
**searchTextFieldView.searchText.text = "My Text"**
}
Я использую раскадровку.Кроме того, я вижу текстовое поле с заполнителем text.only проблема в том, что я не могу установить текст для него.Кто-нибудь может помочь.Что не так в моем коде.