Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class ServerWizardVC: UIViewController, UITextViewDelegate, UIDocumentMenuDelegate, UIDocumentPickerDelegate, FileManagerDelegate
- @IBOutlet weak var tfServerURL: UITextField!
- @IBOutlet weak var tfServerUser: UITextField!
- @IBOutlet weak var tfServerPassword: UITextField!
- @IBOutlet weak var tfServerPort: UITextField!
- override func viewDidLoad()
- {
- print("ServerWizardVC > viewDidLoad")
- super.viewDidLoad()
- tfServerURL.tag = 0
- registerForKeyboardNotifications()
- deregisterFromKeyboardNotifications()
- }
- override func viewWillAppear(_ animated: Bool)
- {
- print("ServerWizardVC > viewWillAppear")
- NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillShow), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
- }
- func registerForKeyboardNotifications()
- {
- print("ServerWizardVC > registerForKeyboardNotifications")
- NotificationCenter.default.addObserver(self, selector: #selector(keyboardWasShown), name: NSNotification.Name.UIKeyboardDidShow, object: nil)
- NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillBeHidden), name: NSNotification.Name.UIKeyboardDidShow, object: nil)
- }
- func deregisterFromKeyboardNotifications()
- {
- print("ServerWizardVC > deregisterFromKeyboardNotifications")
- NotificationCenter.default.removeObserver(self, name: NSNotification.Name.UIKeyboardWillShow, object: nil)
- NotificationCenter.default.removeObserver(self, name: NSNotification.Name.UIKeyboardWillHide, object: nil)
- }
- @objc func keyboardWillShow(notification:NSNotification)
- {
- print("ServerWizardVC > keyboardWillShow")
- let userInfo:NSDictionary = notification.userInfo! as NSDictionary
- let keyboardFrame:NSValue = userInfo.value(forKey: UIKeyboardFrameEndUserInfoKey) as! NSValue
- let keyboardRectangle = keyboardFrame.cgRectValue
- let keyboardHeight = keyboardRectangle.height
- keyboardHeightValue = keyboardHeight
- }
- @objc func keyboardWasShown(notification: NSNotification)
- {
- print("ServerWizardVC > keyboardWasShown")
- }
- @objc func keyboardWillBeHidden (notification: NSNotification)
- {
- print("ServerWizardVC > keyboardWillBeHidden")
- }
- func textFieldShouldReturn(_ textField: UITextField) -> Bool
- {
- print("ServerWizardVC > textFieldShouldReturn")
- if let nextField = tfServerURL.superview?.viewWithTag(textField.tag + 1) as? UITextField
- {
- nextField.becomeFirstResponder()
- checkTextFieldPosition(tfTag: textField.tag + 1)
- }
- else
- {
- vMainView.frame.origin.y = 0
- textField.resignFirstResponder()
- }
- return false
- }
- func checkTextFieldPosition(tfTag : Int)
- {
- print("ServerWizardVC > checkTextFieldPosition")
- let keyboardTop = mainViewHeight - keyboardHeightValue
- let tfServerPasswordTop = tfServerPassword.frame.origin.y
- if(tfTag == 3)
- {
- if((keyboardTop < tfServerPasswordTop) && (vMainView.frame.origin.y == 0))
- {
- let yPosition = vMainView.frame.origin.y - keyboardHeightValue + 100
- vMainView.frame.origin.y = yPosition
- }
- }
- }
- class ServerWizardVC: UIViewController, UITextFieldDelegate, UIDocumentMenuDelegate, UIDocumentPickerDelegate, FileManagerDelegate
Add Comment
Please, Sign In to add comment