swiftui - 如何在 SwiftUI 中创建可点击的 url/电话号码
问题描述
我想在 SwiftUI 文本(或任何视图)中显示电话号码,然后使其可点击,以便打开“电话”。
有没有办法用 SwiftUI 做到这一点,或者我应该尝试在 SwiftUI 中包装一个 UITextView 并用 NSAttributed 字符串等老式方式来做?
我已阅读 SwiftUI 中的 Text 文档,但找不到任何有关如何执行此操作的信息。目前正在尝试在 Xcode 11 beta 5 中执行此操作。
我在 SwiftUI.h 的 SwiftUI API 中搜索了“文本”
我还搜索了 stackoverflow [swiftui] 和 google 的查询,例如“使电话号码/url 可点击”、“可点击的链接/url swiftUI”等。
Text("123-456-7890")
.onTapGesture {
// do something here
}
(文本将是日本电话号码)
解决方案
使用 iOS 14 / Xcode 12.0 测试版 5
将 SwiftUI 中的新链接功能用于电话和电子邮件链接。
// Link that will open Safari on iOS devices
Link("Apple", destination: URL(string: "https://www.apple.com")!)
// Clickable telphone number
Link("(800)555-1212", destination: URL(string: "tel:8005551212")!)
// Clickable Email Address
Link("apple@me.com", destination: URL(string: "mailto:apple@me.com")!)
推荐阅读
- if-statement - 为什么此 Google 表格 IF 语句返回“#Value”而不是“0”
- spring - Spring Boot API如何验证请求标头中发送的NONCE值以避免重放攻击
- alexa - 如何在alexa上获取一个人的名字?
- python - 隐马尔可夫模型结果(解码)每次都变化
- python - 如何使用 Tokenizer 函数 tensorflow 对标点符号进行标记
- python - Pandas 合并:不能将现有列的名称用于指示符列
- php - wordpress 卸载 CSS 和 JS 并上传到 GCP CDN 存储桶
- angular - 如何从 Json 占位符中获取记录,将其存储在数组中并在屏幕上打印
- ebay-api - 如何使用销售 API 通过 sku 获取商品?
- java - 未知序列化对象到 XML