swift - 如何正确格式化字符串以在 Swift 中填充标签
问题描述
我有一个应用程序,它有一个向 UIView 支付数据的 segue,我需要在数字之后显示百分号,并且只有一个或两个十进制数字。正如您在下面看到的那样,我正在这样做,因为我无法从下面的第一个示例中使用“格式:”到第二个示例中执行相同的操作。
var dailyUviString: String {
return String(format: "%.1f", dailyUvi!)
}
var dailyPopString: String {
return String("\(dailyPop!*100) %")
}
有任何想法吗 ?
谢谢
解决方案
如果您想在格式中包含百分号,您只需添加两次:
var dailyPopString: String {
String(format: "%.1f%%", dailyPop!*100) // "50.0%"
}
另一种选择是使用NumberFormatter
. 请注意,使用NumberFormatter
with numberStyle
set to时,.percent
您不需要将值乘以 100:
let numberFormatter = NumberFormatter()
numberFormatter.minimumFractionDigits = 1
numberFormatter.maximumFractionDigits = 1
numberFormatter.numberStyle = .percent
numberFormatter.string(for: dailyPop!) // "50.0%"
推荐阅读
- c# - 插入检查电子邮件是否存在之前的 MySQL 触发器
- python - 如何在熊猫中使用 groupby 计算过去 14 天的平均值
- python - k-means 质心标签在同一程序的运行中发生变化?
- python-3.x - 如何从图表中删除框架-pyplot -matplotlib
- mediawiki - 防止用户对其个人脚本进行不必要的更改
- spring - 客户在 EUREKA 中使用 AWS 私有 IP 注册
- flutter - 如何从 Flutter 中的另一个文件访问用户定义的函数
- javascript - 如何根据 Redux 状态动态更改 React Navigation 标签栏的标签和图标
- git - (master) 写在命令行后面的目录
- oracle - PL/SQL 如何假脱机多个文件?