在xcode 8中,我尝试存档时出错。这是代码:
@IBAction func dialNumber(_ sender: AnyObject) {
if let url = URL(string: "tel://\(8708382937)") {
UIApplication.shared.open(url, options: [:], completionHandler: nil)
}
}
在以“if let ...”开头的行上,我收到此错误: 整数文字'8708382937'在存储到'Int'时溢出
答案 0 :(得分:4)
这是预期的并且是正确的错误。你为什么把号码放在\()
?这评估为Swift。作为Swift,这是一个字面数字,太大而不适合Int。你几乎肯定是这个意思:
"tel://8708382937"
或者更明智:
"tel:8708382937"
(斜杠特别是HTTP URL方案的一部分。它们不是URL和do not belong on tel
URLs的一般部分。)
答案 1 :(得分:0)
没有理由不为URL使用字符串文字。
if let url = URL(string: "tel://8708382937") {
UIApplication.shared.open(url, options: [:], completionHandler: nil)
}