好吧,我是新的URL查询和Swift的整个方面,需要帮助。现在,我有一个iMessage应用程序,它包含和SKScene
。对于用户轮流玩游戏,我需要在1个会话内来回传送游戏,正如我在此学到的:https://medium.com/lost-bananas/building-an-interactive-imessage-application-for-ios-10-in-swift-7da4a18bdeed。Swift3中的SKScene和URLQueryItems?
到目前为止,我有我的场景都在工作,但是我倒了苹果公司的冰淇淋演示,他们来回发送连续建立的冰淇淋,我不知道如何“查询”我的SKScene
,所以我可以发送现场。
我不清楚URLQueryItem
的工作原理,因为文档与sprite套件场景无关。
苹果公司查询自己的“冰淇淋”,在目前的状态是这样的:
init?(queryItems: [URLQueryItem]) {
var base: Base?
var scoops: Scoops?
var topping: Topping?
for queryItem in queryItems {
guard let value = queryItem.value else { continue }
if let decodedPart = Base(rawValue: value), queryItem.name == Base.queryItemKey {
base = decodedPart
}
if let decodedPart = Scoops(rawValue: value), queryItem.name == Scoops.queryItemKey {
scoops = decodedPart
}
if let decodedPart = Topping(rawValue: value), queryItem.name == Topping.queryItemKey {
topping = decodedPart
}
}
guard let decodedBase = base else { return nil }
self.base = decodedBase
self.scoops = scoops
self.topping = topping
}
}
fileprivate func composeMessage(with iceCream: IceCream, caption: String, session: MSSession? = nil) -> MSMessage {
var components = URLComponents()
components.queryItems = iceCream.queryItems
let layout = MSMessageTemplateLayout()
layout.image = iceCream.renderSticker(opaque: true)
layout.caption = caption
let message = MSMessage(session: session ?? MSSession())
message.url = components.url!
message.layout = layout
return message
}
}
,但我不能找出如何“查询”的SKScene
。我怎样才能“发送”来回SKScene
?这可能吗?
谢谢,是的我想通了,但现在有麻烦,因为你只能存储字符串..你可以请看看http://stackoverflow.com/questions/43334841/can-you-send-objects-other -than-strings-in-urlqueryitems – skyguy
很高兴得到了帮助:)我也回答了你的其他问题。希望这有助于... – Fahim