我是斯威夫特的新人。我希望访问此方法的sourceApplication参数中的options值。
optional func application(_ app: UIApplication,
open url: URL,
options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool我检查了文献资料,发现UIApplicationOpenURLOptionsKey是一个结构。它包含一个类型属性:static let sourceApplication: UIApplicationOpenURLOptionsKey
但是,当我试图通过这样做访问sourceApplication值时:
options.sourceApplication引发...this错误:
类型'
[UIApplicationOpenURLOptionsKey : Any]‘的值没有成员'sourceApplication’
我认为这可能是一本字典,但键的类型是UIApplicationOpenURLOptionsKey。我不知道如何使用键类型UIApplicationOpenURLOptionsKey访问值。
我查看了教程点和其他一些网站,但没有找到解决方案。
我的问题是:
sourceApplication访问名为options的值[UIApplicationOpenURLOptionsKey : Any] = [:])?这是字典吗?发布于 2017-12-05 12:54:41
SWIFT4.2的更新
方法改为:
func open(_ url: URL,
options: [UIApplication.OpenExternalURLOptionsKey : Any] = [:],
completionHandler completion: ((Bool) -> Void)? = nil)您可以以同样的方式访问这些密钥。
options是字典。您应该访问它的sourceApplication 键。
if let sourceApp = options[.sourceApplication] as? String {
//work with the value
}包含向应用程序发送打开URL请求的应用程序的包ID。值是一个
NSString对象。
https://stackoverflow.com/questions/47654083
复制相似问题