我正在構建一個包含搜索或 UITextField 的應用程式,它位于安全區域附近的視圖底部,因此當我觸摸它并彈出鍵盤時,文本欄位隱藏在鍵盤后面。
當鍵盤彈出時,我怎樣才能做到這一點,文本欄位移動到它的正上方?這是我在 viewController.swift 中的代碼
class ViewController: UIViewController {
@IBOutlet weak var windLabel: UILabel!
@IBOutlet weak var cityLabel: UILabel!
@IBOutlet weak var tempLabel: UILabel!
@IBOutlet weak var searchCItyTextField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
searchCItyTextField.delegate = self
}
}
//MARK: - UITextFieldDelegate
extension UIViewController: UITextFieldDelegate {
public func textFieldShouldReturn(_ textField: UITextField) -> Bool {
self.view.endEditing(true)
return true
}
}
以下是螢屏截圖:

uj5u.com熱心網友回復:
您可以@IBOutlet為文本欄位的底部約束添加一個,并在鍵盤出現/消失時更新它。例如,-30當沒有鍵盤時將其設定為從底部開始,如果有鍵盤則將其更新-keyboardHeight - 30為。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/391862.html
