DatePicker

Em desenvolvimento iOS, um DatePicker (seletor de data) é um elemento de interface do usuário que permite aos usuários escolher uma data ou hora. Ele é frequentemente utilizado em formulários ou outras interações onde é necessário coletar informações de data e hora. Vamos ver como criar e trabalhar com um DatePicker no iOS usando Swift:

Criando um DatePicker no Interface Builder (Storyboard):

  1. Abra o Xcode e crie um novo projeto ou abra um projeto existente.
  2. Abra o Main.storyboard ou o arquivo onde você deseja adicionar o DatePicker.
  3. Na biblioteca de objetos (Object Library), procure “Date Picker”.
  4. Arraste e solte o DatePicker para a tela no storyboard.

Criando um DatePicker Programaticamente em Swift:

Você também pode criar um DatePicker programaticamente usando código Swift. Aqui está um exemplo de como criar e configurar um DatePicker em um View Controller:

import UIKit

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        // Criando um DatePicker programaticamente
        let meuDatePicker = UIDatePicker()
        
        // Configurando o estilo do DatePicker (pode ser .date, .time ou .dateAndTime)
        meuDatePicker.datePickerMode = .date
        
        // Configurando o mínimo e o máximo da data selecionável (opcional)
        meuDatePicker.minimumDate = Calendar.current.date(byAdding: .year, value: -10, to: Date())
        meuDatePicker.maximumDate = Calendar.current.date(byAdding: .year, value: 10, to: Date())
        
        // Adicionando uma ação quando a data é alterada
        meuDatePicker.addTarget(self, action: #selector(dataSelecionada(_:)), for: .valueChanged)
        
        // Definindo a posição do DatePicker
        meuDatePicker.frame = CGRect(x: 50, y: 100, width: 200, height: 200)
        
        // Adicionando o DatePicker à hierarquia de Views
        self.view.addSubview(meuDatePicker)
    }
    
    @objc func dataSelecionada(_ sender: UIDatePicker) {
        let dataSelecionada = sender.date
        print("Data selecionada: \(dataSelecionada)")
    }
}

Neste exemplo, um DatePicker é criado programaticamente e uma ação é associada a ele. Quando a data é alterada, a função dataSelecionada(_:) é chamada para processar a data selecionada.

Personalizando um DatePicker:

Você pode personalizar um DatePicker de várias maneiras, incluindo:

  • Modo do DatePicker: Configure o modo do DatePicker usando a propriedade datePickerMode (.date, .time, ou .dateAndTime).
  • Intervalo de Min-Máx: Defina o intervalo mínimo e máximo de datas usando as propriedades minimumDate e maximumDate.
  • Formato da Data: Ajuste o formato da data exibido no DatePicker usando a propriedade locale para configurar o locale e dateFormat para configurar o formato de data.

Personalize o DatePicker conforme as necessidades do seu aplicativo para criar uma experiência de escolha de data intuitiva para os usuários.