gpt4 book ai didi

ios - 呈现带有 SpriteKit 场景的 UIAlertController (Objective-C)

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:01:51 35 4
gpt4 key购买 nike

我正在尝试制作一个 SpriteKit 应用程序,如果用户愿意,它有一个按钮可以转到我的网站。我认为发出警报(因为它是为 iOS 8 制作的,我会使用 UIAlertController)确认他们是否想被重定向到 Safari 以查看它是一个很好的做法。

到目前为止,这是我在代码中制作/显示此警报的方法:

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Go to website" message:@"Would you like to visit DannyDalton.com? This will open Safari." preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *yes = [UIAlertAction actionWithTitle:@"Yes" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action){
[self goToSite];
}];
UIAlertAction *no = [UIAlertAction actionWithTitle:@"No" style:UIAlertActionStyleCancel handler:^(UIAlertAction *action){}];
[alertController addAction:yes];
[alertController addAction:no];
[alertController presentViewController:(UIViewController*)self animated:YES completion:nil];

我的问题是将 alertController 呈现到 View Controller 上,所以它会弹出。关于如何将 SKView 变成 UIViewController 以便 alertController 可以在屏幕上显示自己的任何建议?谢谢!

最佳答案

一种方法是使用 NSNotification

GameViewController(包含SKView)中添加一个NSNotification观察者,当收到通知时调用该函数显示警报。

class GameViewController: UIViewController {

override func viewDidLoad() {
super.viewDidLoad()

NSNotificationCenter.defaultCenter().addObserver(self, selector: "showAlert:", name: "showAlert", object: nil)
}

func showAlert(object : AnyObject) {

// Your alert code.
}
}

然后从您想要显示警报的地方发布此通知。

NSNotificationCenter.defaultCenter().postNotificationName("showAlert", object: nil)

关于ios - 呈现带有 SpriteKit 场景的 UIAlertController (Objective-C),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29159008/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com