我使用DateComponentsFormatter
来实现这样的目标:" 1小时30分钟"。这是我的代码:
let formatter = DateComponentsFormatter()
formatter.unitsStyle = .short
formatter.allowedUnits = [.hour, .minute]
return formatter.string(from: 90)!
这应该返回1小时30分钟,但我的输出是#34; 1分钟"。我的代码有问题还是iOS错误?
答案 0 :(得分:3)
您使用的DataComponentsFormatter string(from: TimeInterval)
方法需要以秒为单位的时间间隔。
因此,您要求格式化程序格式化90秒,而不是90分钟。
这将解决您的问题:
return formatter.string(from: 90 * 60)! // 90 minutes
如果对此类事情有任何疑问,请阅读文档。文档显示了以下参数说明:
时间间隔,以秒为单位。该值必须是有限数。创建字符串时,负数被视为正数。