Możesz sfałszować UITextField za pomocą UITextView. Problem, który będziesz miał, polega na tym, że tracisz funkcję zastępcy.
Jeśli zdecydujesz się użyć UITextView i potrzebujesz symbolu zastępczego, wykonaj następujące czynności:
W twoim widokuDidLoad ustaw kolor i tekst na symbole zastępcze:
myTxtView.textColor = .lightGray
myTxtView.text = "Type your thoughts here..."
Następnie spraw, aby symbol zastępczy zniknął po wybraniu UITextView:
func textViewDidBeginEditing (textView: UITextView) {
if myTxtView.textColor.textColor == ph_TextColor && myTxtView.isFirstResponder() {
myTxtView.text = nil
myTxtView.textColor = .white
}
}
Gdy użytkownik zakończy edycję, upewnij się, że istnieje wartość. Jeśli nie, dodaj ponownie symbol zastępczy:
func textViewDidEndEditing (textView: UITextView) {
if myTxtView.text.isEmpty || myTxtView.text == "" {
myTxtView.textColor = .lightGray
myTxtView.text = "Type your thoughts here..."
}
}
Inne funkcje, które mogą być konieczne do sfałszowania:
UITextField często pisze wielką literą każdą literę, możesz dodać tę funkcję do UITableView:
myTxtView.autocapitalizationType = .words
Pola UITextField zwykle nie przewijają się:
myTxtView.scrollEnabled = false