3

I'm trying to create an alarm clock app for iOS, Im new to Swift. I want to know how to get only the time from the UIDatePicker. Till now, I have a code which just gives the entire date with time. `import UIKit

class ViewController: UIViewController {

@IBOutlet weak var alarmTime: UIDatePicker!
override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}
@IBAction func alarmTime(_ sender: UIDatePicker){
 sender.datePickerMode = UIDatePickerMode.time
    print(sender.date)
}

} ` Here is the screenshot of the output of the above code in the terminal

Reshma Suresh
  • 165
  • 1
  • 4
  • 13

2 Answers2

6

Set your date picker mode as below.

datePicker.datePickerMode = UIDatePickerMode.Time

Get Time from Date :

    let date = Date()

    let calendar = Calendar.current
    let comp = calendar.dateComponents([.hour, .minute], from: date)
    let hour = comp.hour
    let minute = comp.minute
Subramanian P
  • 4,365
  • 2
  • 21
  • 25
4
 let datePicker = UIDatePicker()  
  datePicker.datePickerMode = UIDatePickerMode.time
// datePicker.backgroundColor = UIColor.blue
  txtFildDeadLine.textField.inputView = datePicker

And according to your question, place it in viewDidLoad

alarmTime.datePickerMode = UIDatePickerMode.time
ami rt
  • 935
  • 6
  • 11