GameScene Share Button(GameScene共享按钮)
本文介绍了GameScene共享按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的游戏差不多可以开始了,我唯一缺少的(并且想补充的)就是在社交媒体上分享标准消息的选项。我环顾四周,发现了不同的方法,但当我实现它们时,似乎没有一种方法奏效。我有一种感觉,可能是我做错了什么简单的事情!
这是我的按钮:
func createShareButton() {
shareButton = SKSpriteNode(imageNamed: "shareBtn")
shareButton.size = CGSize(width: 240, height: 55)
shareButton.position = CGPoint(x: self.frame.width / 2, y: (self.frame.height / 2) - 150)
shareButton.zPosition = 6
self.addChild(shareButton)
shareButton.run(SKAction.scale(to: 1.0, duration: 0.3))
}
当按钮被按下时,我的代码如下(在我的GameScene.wift文件中):
let vc = self.view?.window?.rootViewController
let myText = "share test message!"
let activityVC:UIActivityViewController = UIActivityViewController(activityItems: [myText], applicationActivities: nil)
vc?.present(activityVC, animated: true, completion: nil)
当我点击该按钮时,在控制台中出现错误:
Warning: Attempt to present <UIActivityViewController: 0x149d4e880> on <MyGame.initialVC: 0x149d0fe90> whose view is not in the window hierarchy!
知道我哪里出错了吗?
提前谢谢!
推荐答案
两天前我遇到了同样的问题。我用这个stackoverflow answer
修复了它我一直收到相同的错误,这是因为rootViewController不是层次结构中当前最顶层的视图控制器。当我想让视图控制器控制当前的SKScene时,它正在尝试使用我的初始视图控制器。
希望这能有所帮助
func shareGame() {
if var top = scene?.view?.window?.rootViewController {
while let presentedViewController = top.presentedViewController {
top = presentedViewController
}
let activityVC = UIActivityViewController(activityItems: ["I am playing Crashbox! Check it out."], applicationActivities: nil)
activityVC.popoverPresentationController?.sourceView = view
top.present(activityVC, animated: true, completion: nil)
}
}
这篇关于GameScene共享按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:GameScene共享按钮
基础教程推荐
猜你喜欢
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01