es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo agregar el campo de texto con “0,” si está vacío y el usuario hizo clic en el separador de coma o punto en un teclado numérico decimal.

¿Cómo podría detectar si el usuario ha hecho clic en la coma o el punto del teclado numérico decimal? De esta manera, si el cuadro de texto está vacío y el usuario hace clic en el separador decimal de la coma o el punto en el teclado numérico decimal, me gustaría agregar el texto del cuadro de texto con “0,”. Sé que podría usar uitapgesture en todo el cuadro de texto, pero eso no es lo que necesito.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Se puede utilizar el método textField(_:shouldChangeCharactersIn:replacementString:) de UITextFieldDelegate para detectar si el usuario ha hecho clic en la tecla de coma o punto decimal.

    En el método, se puede comprobar el parámetro de replacementString para ver si es igual a "," o ".". Si lo es, se puede agregar al texto del campo de texto "0,".

    Por ejemplo:

    func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
        if string == "," || string == "." {
            textField.text = textField.text + "0,"
        }
        return true
    }
    

Comments are closed.