используйте кнопку приложения вместо системной клавиатуры, используя swift - PullRequest
0 голосов
/ 16 февраля 2020

Я сделал приложение с 4 текстовыми полями (tf1, tf2, tf3, tf4), каждое текстовое поле занимает только один ди git, вот код:


import UIKit

class ViewController: UIViewController, UITextFieldDelegate {


    @IBOutlet var tf1: UITextField!
    @IBOutlet var tf2: UITextField!
    @IBOutlet var tf3: UITextField!
    @IBOutlet var tf4: UITextField!


    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        tf1.addTarget(self, action: #selector(self.textdiChange(textfield:)), for: UIControl.Event.editingChanged)
        tf2.addTarget(self, action: #selector(self.textdiChange(textfield:)), for: UIControl.Event.editingChanged)
        tf3.addTarget(self, action: #selector(self.textdiChange(textfield:)), for: UIControl.Event.editingChanged)
        tf4.addTarget(self, action: #selector(self.textdiChange(textfield:)), for: UIControl.Event.editingChanged)
    }
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        tf1.becomeFirstResponder()
    }
    @objc func textdiChange(textfield: UITextField) {
        let text = textfield.text
        if text?.utf16.count == 1 {
            switch textfield {

            case tf1:
                tf2.becomeFirstResponder()
                break

                case tf2:
                    tf3.becomeFirstResponder()
                    break

                case tf3:
                    tf4.becomeFirstResponder()
                    break

                case tf4:
                    tf4.resignFirstResponder()
                    break

                default:
                    break
            }
        } else {
    }
}

}

Проблема в том, что я не хочу использовать системную клавиатуру,

enter image description here

и я хочу использовать только определенные кнопки c: A, B, C, D и «<» для задней части. вот пример: </p>

enter image description here

так что лучше всего использовать кнопку вместо системной клавиатуры.

...