在显示字符串时删除“可选”关键字-Swift

时间:2018-09-16 22:45:25

标签: ios swift string

我正在使用电影应用程序,它在表视图单元格中显示发行日期作为电影详细信息的一部分。下面是代码:

let date = movieDetail.releaseDate as String
let releaseDateText = NSLocalizedString("release date", comment: "Release date label text")
let tbaText = NSLocalizedString("tba", comment: "TBA text")
releaseDateLabel.text = "\(releaseDateText): \(String(describing: date != "" ? Date.getMMMddyyyyDateFormat(date) : "\(tbaText)" ))"

有了这个,我确实在屏幕上看到日期为Optional(“ Jan 07,2018”)。我只想显示没有可选关键字和括号的日期。无法找出导致“可选”关键字出现的原因。

我的应用程序的一部分: enter image description here

1 个答案:

答案 0 :(得分:1)

替换此

releaseDateLabel.text = "\(releaseDateText): \(String(describing: date != "" ? Date.getMMMddyyyyDateFormat(date) : "\(tbaText)" ))"

使用

releaseDateLabel.text = "\(releaseDateText): \(date != "" ? Date.getMMMddyyyyDateFormat(date)! : "\(tbaText)" ))

为了安全尝试

if date != "" {
    if let str = Date.getMMMddyyyyDateFormat(date) {
       releaseDateLabel.text = "\(releaseDateText): \(str)"
     }
}
else {
       releaseDateLabel.text = "\(releaseDateText): \(tbaText)"
}