54 lines
1.4 KiB
Swift
54 lines
1.4 KiB
Swift
//
|
|
// KeyboardExtension.swift
|
|
// Befund
|
|
//
|
|
// Created by Artur Savitskiy on 15.09.22.
|
|
// Copyright © 2022 MVZ Dr. Stein und Kollegen. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
import UIKit
|
|
|
|
extension UIViewController
|
|
{
|
|
internal func addDoneToolbar(_ textFields: [UITextField]) {
|
|
let toolbar = generateToolbar()
|
|
|
|
textFields.forEach { textField in
|
|
textField.inputAccessoryView = toolbar
|
|
}
|
|
}
|
|
|
|
internal func addDoneToolbar(_ textView: UITextView) {
|
|
let toolbar = generateToolbar()
|
|
|
|
textView.inputAccessoryView = toolbar
|
|
}
|
|
|
|
private func generateToolbar() -> UIToolbar
|
|
{
|
|
let toolbar = UIToolbar()
|
|
let flexSpace = UIBarButtonItem(barButtonSystemItem: .flexibleSpace,
|
|
target: nil, action: nil)
|
|
let doneButton = UIBarButtonItem(title: Core.Lang.Get(key: "BTN_DONE"), style: .done,
|
|
target: self, action: #selector(hideKeyboard))
|
|
|
|
toolbar.setItems([flexSpace, doneButton], animated: true)
|
|
toolbar.sizeToFit()
|
|
|
|
return toolbar
|
|
}
|
|
|
|
internal func hideKeyboardWhenTappedAround()
|
|
{
|
|
let tap = UITapGestureRecognizer(target: self, action: #selector(hideKeyboard))
|
|
tap.cancelsTouchesInView = false
|
|
view.addGestureRecognizer(tap)
|
|
}
|
|
|
|
@objc func hideKeyboard()
|
|
{
|
|
self.view.endEditing(true)
|
|
}
|
|
}
|