从 URL 方案中获取参数 - Swift Xcode
Get parameter from URL Scheme - Swift Xcode
我在 Info.plist
中做了一个 URL 方案来调用我的应用程序,但是 URL 还解析了我需要读取的一串数据。
环顾四周后我发现 - http://www.informit.com/articles/article.aspx?p=2301787&seqNum=2
使用以下代码
var scheme: String!
var path: String!
var query: String!
func application(app: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool {
scheme = url.scheme
path = url.path
query = url.query
return true
}
据说每当我通过 URL 调用应用程序时都会调用该函数,但是该函数从未被调用过,我无法想象我必须将函数放在 viewDidLoad
,如果我确实把它放在 viewDidLoad
中,每次应用程序启动时都会调用它。
我的假设是错误的吗 - 不需要在 viewDidLoad
中调用该函数,或者是否有更好的方法使用 [=29 从 URL 方案中获取数据=] 创建方案
var scheme: String!
var path: String!
var query: String!
func application(app: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool {
scheme = url.scheme
path = url.path
query = url.query
return true
}
需要在 AppDelegate.Swift 中,然后您可以通过执行 -
在 viewcontroller 中访问它
var appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate;
然后您可以通过执行 -
来调用变量
var something = pathScheme.appDelegate;
我在 Info.plist
中做了一个 URL 方案来调用我的应用程序,但是 URL 还解析了我需要读取的一串数据。
环顾四周后我发现 - http://www.informit.com/articles/article.aspx?p=2301787&seqNum=2
使用以下代码
var scheme: String!
var path: String!
var query: String!
func application(app: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool {
scheme = url.scheme
path = url.path
query = url.query
return true
}
据说每当我通过 URL 调用应用程序时都会调用该函数,但是该函数从未被调用过,我无法想象我必须将函数放在 viewDidLoad
,如果我确实把它放在 viewDidLoad
中,每次应用程序启动时都会调用它。
我的假设是错误的吗 - 不需要在 viewDidLoad
中调用该函数,或者是否有更好的方法使用 [=29 从 URL 方案中获取数据=] 创建方案
var scheme: String!
var path: String!
var query: String!
func application(app: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool {
scheme = url.scheme
path = url.path
query = url.query
return true
}
需要在 AppDelegate.Swift 中,然后您可以通过执行 -
在 viewcontroller 中访问它var appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate;
然后您可以通过执行 -
来调用变量var something = pathScheme.appDelegate;