Свифт self.view.frame.origin.y не работает - PullRequest
0 голосов
/ 08 апреля 2020

Чтобы решить проблему с клавиатурой, скрывающей текстовое поле, я попытался:

self.view.frame.origin.y -= 100

Но это не работает! Что с ним не так?

class TestViewController: UIViewController {

    @IBOutlet weak var First: UITextField!
    @IBOutlet weak var Second: UITextField!
    var ActivateTextfield : UITextField!

    func textFieldDidBeginEditing(_ textField: UITextField) {
        ActivateTextfield = textField
    }

    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?){
        self.view.endEditing(true)
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        First.delegate = self
        Second.delegate = self
        FuncaddObservser()
    }

}

extension TestViewController :  UITextFieldDelegate {

    func FuncaddObservser(){
        NotificationCenter.default.addObserver(self, selector: #selector(KeyBoardwillShow), name: UIResponder.keyboardWillShowNotification, object: nil)

        NotificationCenter.default.addObserver(self, selector: #selector(KeyBoardwillHide), name: UIResponder.keyboardWillShowNotification, object: nil)
    }

    @objc func KeyBoardwillShow(_ noti : Notification ){
        self.view.frame.origin.y -= 100

    }

    @objc func KeyBoardwillHide(_ noti : Notification ){

        self.view.frame.origin.y = 0
    }

}
...