Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Como Implementar Validação de Entrada em Aplicativos iOS

A validação de entrada é uma prática essencial no desenvolvimento de software para garantir que os dados fornecidos pelos usuários sejam corretos e seguros. No ambiente Apple, especificamente no desenvolvimento de aplicativos iOS, a validação de entrada pode ser realizada utilizando Swift, a linguagem de programação oficial da Apple. Este artigo técnico irá guiá-lo através do processo de implementação de validação de entrada em um aplicativo iOS.

Exemplos:

Validação de Campos de Texto

Vamos começar com um exemplo básico de validação de um campo de texto para garantir que o usuário insira um endereço de e-mail válido.

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var emailTextField: UITextField!
    @IBOutlet weak var validationLabel: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()
        validationLabel.isHidden = true
    }

    @IBAction func validateEmail(_ sender: UIButton) {
        if let email = emailTextField.text {
            if isValidEmail(email) {
                validationLabel.text = "Email is valid"
                validationLabel.textColor = .green
            } else {
                validationLabel.text = "Email is invalid"
                validationLabel.textColor = .red
            }
            validationLabel.isHidden = false
        }
    }

    func isValidEmail(_ email: String) -> Bool {
        let emailRegEx = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Z]{2,64}"
        let emailPredicate = NSPredicate(format:"SELF MATCHES %@", emailRegEx)
        return emailPredicate.evaluate(with: email)
    }
}

Neste exemplo, temos um UITextField para a entrada do e-mail e um UILabel para mostrar a mensagem de validação. A função isValidEmail usa uma expressão regular para verificar se o e-mail está no formato correto.

Validação de Senha

Agora, vamos validar uma senha para garantir que ela tenha pelo menos 8 caracteres, incluindo letras maiúsculas, minúsculas, números e caracteres especiais.

import UIKit

class PasswordViewController: UIViewController {

    @IBOutlet weak var passwordTextField: UITextField!
    @IBOutlet weak var validationLabel: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()
        validationLabel.isHidden = true
    }

    @IBAction func validatePassword(_ sender: UIButton) {
        if let password = passwordTextField.text {
            if isValidPassword(password) {
                validationLabel.text = "Password is valid"
                validationLabel.textColor = .green
            } else {
                validationLabel.text = "Password is invalid"
                validationLabel.textColor = .red
            }
            validationLabel.isHidden = false
        }
    }

    func isValidPassword(_ password: String) -> Bool {
        let passwordRegEx = "^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[#$^+=!*()@%&]).{8,}$"
        let passwordPredicate = NSPredicate(format:"SELF MATCHES %@", passwordRegEx)
        return passwordPredicate.evaluate(with: password)
    }
}

Neste exemplo, a função isValidPassword usa uma expressão regular para garantir que a senha atenda a todos os critérios de complexidade.

Validação de Número de Telefone

Por fim, vamos validar um número de telefone para garantir que ele siga um formato específico, como (123) 456-7890.

import UIKit

class PhoneViewController: UIViewController {

    @IBOutlet weak var phoneTextField: UITextField!
    @IBOutlet weak var validationLabel: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()
        validationLabel.isHidden = true
    }

    @IBAction func validatePhone(_ sender: UIButton) {
        if let phone = phoneTextField.text {
            if isValidPhone(phone) {
                validationLabel.text = "Phone number is valid"
                validationLabel.textColor = .green
            } else {
                validationLabel.text = "Phone number is invalid"
                validationLabel.textColor = .red
            }
            validationLabel.isHidden = false
        }
    }

    func isValidPhone(_ phone: String) -> Bool {
        let phoneRegEx = "^\\(\\d{3}\\) \\d{3}-\\d{4}$"
        let phonePredicate = NSPredicate(format:"SELF MATCHES %@", phoneRegEx)
        return phonePredicate.evaluate(with: phone)
    }
}

Neste exemplo, a função isValidPhone verifica se o número de telefone segue o formato (123) 456-7890.

Conclusão

A validação de entrada é uma parte crucial do desenvolvimento de aplicativos iOS para garantir a integridade e a segurança dos dados. Utilizando Swift e expressões regulares, é possível implementar validações robustas para diferentes tipos de entrada de usuário.

To share Download PDF

Gostou do artigo? Deixe sua avaliação!
Sua opinião é muito importante para nós. Clique em um dos botões abaixo para nos dizer o que achou deste conteúdo.