2017-03-06 35 views
0

我试图将日期字段保存到Firebase,但出现错误。如何使用Swift将日期字段保存到Firebase?

@IBAction func dateValueChanged(sender: AnyObject) { 
    let datePicker = UIDatePicker() 
    datePicker.maximumDate = NSDate() 
} 


@IBAction func saveButtonTapped(sender: AnyObject) { 


    self.ref.child("New Posts").child(userID!).setValue(["Diary:":textEntry.text, "Title:": titleEntry.text, "Date:": datePicker.date]) 
} 

错误消息:

Contextual type 'AnyObject' cannot be used with dictionary literal 

任何想法我不这样做?谢谢。

回答

1

我建议将日期保存为Unix时间(timeIntervalSince1970),尽管任何标准的日期格式都应该没问题。

+0

谢谢,但这并没有帮助我保存日期字段。如何将DatePicker的输入调用到我的Firebase参考中? datepicker.date不起作用 –

+0

你有没有对你的'datePicker'(例如你的类中的一个属性)的引用?您应该能够从'datePicker.date' IIRC获取'date',然后根据需要进行格式化。 https://developer.apple.com/reference/uikit/uidatepicker/1615975-date – Cameron

+0

是的我引用了它。输入肯定是收到,但Swift一直给我“上下文类型'AnyObject'不能用于字典文字”self.ref.child行上的错误 –

1

将NSDate转换为NSNumber进行保存。并从NSNumber到NSDate进行阅读。但请注意,如果您曾经从Android应用程序读取或写入数据,则需要将数值转换为定义1970年的原始日期(零值)的unix样式时间戳。iOS代表基准略有不同。

相关问题