2016-05-26 9 views
-1
@IBOutlet weak var tvDueDate: UITextField! 
@IBOutlet weak var dateText: UITextField! 

var datePicker = UIDatePicker() 
var dayPicker = UIDatePicker() 
let dateFormatter = NSDateFormatter() 
let timeFormatter = NSDateFormatter() 

var date_time:String! 
var timeAs_24Hour:String! 
var selected_date:String! 
var timeAs_12Hour:String! 



override func viewDidLoad() { 
    super.viewDidLoad() 
    setupDatePicker() 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
} 

func setupDatePicker() { 

    datePicker.datePickerMode = .Time 
    dayPicker.datePickerMode = .Date 

    let toolBar = UIToolbar() 
    toolBar.barStyle = .Default 
    toolBar.translucent = true 
    toolBar.tintColor = UIColor.blueColor() 
    toolBar.sizeToFit() 

    let doneButton = UIBarButtonItem(title: "Done", style: .Plain, target: self, action: #selector(ViewController.doneClick)) 
    let spaceButton = UIBarButtonItem(barButtonSystemItem: .FlexibleSpace, target: nil, action: nil) 
    let cancelButton = UIBarButtonItem(title: "Cancel", style: .Plain, target: self, action: #selector(ViewController.cancelClick)) 

    toolBar.setItems([cancelButton, spaceButton, doneButton], animated: false) 
    toolBar.userInteractionEnabled = true 

    tvDueDate.inputView = datePicker 
    tvDueDate.inputAccessoryView = toolBar 
    tvDueDate.tintColor = UIColor.clearColor() 

    dateText.inputView = dayPicker 
    dateText.inputAccessoryView = toolBar 
    dateText.tintColor = UIColor.clearColor() 
} 



func doneClick() { 
    dateFormatter.dateFormat = "yyyy-MM-dd" 
    timeFormatter.dateFormat = "hh:mm a" 
    dateFormatter.dateStyle = .MediumStyle 

    let selected_Final_Date = dateFormatter.stringFromDate(dayPicker.date) 
    let selected_Final_Time = timeFormatter.stringFromDate(datePicker.date) 

    self.dateText.text = selected_Final_Date.uppercaseString 
    self.tvDueDate.text = selected_Final_Time.uppercaseString 

    tvDueDate.resignFirstResponder() 
    dateText.resignFirstResponder() 
} 

func cancelClick() { 
    tvDueDate.resignFirstResponder() 
    dateText.resignFirstResponder() 
} 

私はSwiftを使用しており、2つのテキストフィールドのクリックで2つのピッカービューを作成しようとしています。最初のテキストフィールドでは、それは2月にすべての月の年が開き、それはタイミングを示しています。私は現在の日と1日目のすべての曜日を1回目のテキストフィールドのクリックで表示し、2回目のテキストフィールドでは午前9時から午後6時の間、9時、9時30分、10時、10時:30,11:00,11:30ピッカー表示の現在および今後の日を表示する

+0

あなたが試したコードを表示できますか? –

答えて

0

(あなたは1つのフィールドに日付と別の時間を選択すると決定している場合、または2)あなたは、彼らが正確この目的のために設計されている

をUIDatePickerを使用する必要があります。

ユーザーは、ユーザーが日付、日付、時刻、または時刻を選択できるかどうかを判断できるように設定できます。また、ユーザーが選択できる日付または時間の範囲を制限できるように設定されています。 Xcodeのドキュメントはすばらしいことです。それを試してみるべきです。

関連する問題