UIDatePicker
で出力している 2020年12月05日 at 18:21
を
2020/12/05 at 18:21
に変換したいです。
この場合どうすれば良いのでしょうか。
// ViewController.swift import UIKit import os class ViewController: UIViewController { var request:UNNotificationRequest! @IBOutlet weak var dateField: UITextField! var datePicker: UIDatePicker = UIDatePicker() var test = "" override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. // for datepicker datePicker.datePickerMode = UIDatePicker.Mode.dateAndTime datePicker.timeZone = NSTimeZone.local datePicker.locale = Locale(identifier: "ja_JP") dateField.inputView = datePicker // 閉じるボタン let toolbar = UIToolbar(frame: CGRect(x: 0, y: 0, width: view.frame.size.width, height: 35)) let spacelItem = UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: self, action: nil) let doneItem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(done)) toolbar.setItems([spacelItem, doneItem], animated: true) dateField.inputView = datePicker dateField.inputAccessoryView = toolbar // for プッシュ通知 // 日付フォーマット let date = Date() let dateFormatter = DateFormatter() // 2020年4月26日 dateFormatter.timeStyle = .short // 21:06 dateFormatter.dateStyle = .long dateFormatter.locale = Locale(identifier: "ja_JP") // 日時指定 var notificationTime = DateComponents() notificationTime.year = 2020 notificationTime.month = 12 notificationTime.day = 5 notificationTime.hour = 18 notificationTime.minute = 17 let trigger = UNCalendarNotificationTrigger.init(dateMatching: notificationTime, repeats: false) // プッシュ通知:内容 let content = UNMutableNotificationContent() content.title = "お知らせ" content.body = "テストです。" content.sound = UNNotificationSound.default // プッシュ通知リクエスト作成 request = UNNotificationRequest.init( identifier: "CalendarNotification", content: content, trigger: trigger) } // MARK: -- Action @IBAction func setButton(_ sender: Any) { os_log("setButton") // 通知リクエストの登録 let center = UNUserNotificationCenter.current() center.add(request) } // UIDatePickerのDoneを押したら発火 @objc func done() { dateField.endEditing(true) let formatter = DateFormatter() formatter.dateFormat = "yyyy年MM月dd日 'at' HH:mm" // 表示 dateField.text = "(formatter.string(from: datePicker.date))" self.test = "(formatter.string(from: datePicker.date))" print("UIdatepickerの日時は...") print(self.test) } } // 出力結果:2020年12月05日 at 18:21
回答1件
あなたの回答
tips
プレビュー