将系统日期放入 swift 中的文本字段

Putting system date into a text field in swift

我是 swift 的新手,希望在字符串操作方面得到一些帮助。我试图从 NSDate 中获取当前日期并将其放入我正在使用的应用程序的文本字段中。我尝试使用 NSDateFormatter 将 ios 系统日期放入国际格式或 dd-MM-yyyy 中,但我一直收到所有这些错误,但没有任何效果。我可以使用美国日期格式,我真的需要它来工作。我真的不太了解 swift,但我知道我尝试遵循有关堆栈溢出的其他教程指导我使用 NSDate 在视图控制器中放置一些代码。我研究了其他一些教程,并试图让它们做我需要做的事情,这就是结果。它用于创建日期和时间戳,但我试图删除处理时间的部分。我想我只是让事情变得更糟了。

func convertDateFormatter(date: String) -> String {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"

 guard let date = dateFormatter.date(from: date) else {
     assert(false, "no date from string")
     return ""
 }

 dateFormatter.dateFormat = "dd-MM-yyyy"
 let timeStamp = dateFormatter.string(from: date)
 return timeStamp

 }

我的 swift 版本不识别 NSDate,它想将其更改为 Date,我不知道它如何影响我应该如何进行此操作。我在代码中将其更改为仅日期,但它仍然不起作用。

此外,昨天我和我的移动应用老师试图将自定义变量与文本字段等同起来,但它不起作用。

 var UIDateStamp = UITextField().self

我的搜索措辞可能不正确,但我已经用我能想到的所有不同方式搜索了同一个查询,但到目前为止我尝试过的每个解决方案都给我带来了很多编码错误 class 我无法解决。

非常感谢能帮助解决这个问题。

如果您需要系统日期,您需要创建不带参数的函数。

Swift 3

 func convertDateFormatter() -> String {
      let date = Date()
      let formatter = DateFormatter()
      formatter.dateFormat = "dd-MM-yyyy" // change format as per needs
      let result = formatter.string(from: date)
      return result 
    }

如果您想要根据当前区域设置的日期格式,请使用 timeStyledateStyle 属性。

此代码 – 计算结果 属性 – returns M/d/yy 美国语言环境

var timeStamp : String {
    let formatter = DateFormatter()
    formatter.timeStyle = .none
    formatter.dateStyle = .short
    return formatter.string(from: Date())
}

日期样式mediumreturnsMMM d, yyyy