等效于SpriteKit中的弹出式窗口

问题描述

我正在使用Swift 5,SpriteKit,SKTileMap。我想使用等效的弹出框。我使用这个词是因为我在其他应用程序中经常使用弹出窗口。基本上,会出现一个小窗口,您阅读了一些内容然后按OK,或者添加一些信息然后按OK。我试图弄清楚怎么做是SpriteKit中类似的东西。

目标是,我希望用户长按图块,然后弹出一个小框,其中包含有关图块的信息。什么地形?有什么资源?有城市吗?那里有球员吗?等等。它不一定是视图,但我想这是要走的路,因为不仅会有很多文字,而且我可以看到有一个关闭按钮,也许还有一些微小的图形,例如与资源相对应的符号,等等。这就是我已经拥有的。我有一个正在工作的长按手势识别器。我已经可以在模拟器上的控制台上打印所有想要的信息。我需要弄清楚的是几件事。

  1. 必填:创建窗口并在其中填充信息。
  2. 可选:在屏幕上平铺和/或居中定位。我尚未确定最佳解决方案。
  3. 可选:背景昏暗(可能只是一些alpha调整)

我目前使用的当前代码实际上非常流畅。我有一个很好的相机捏变焦和良好的平移手势。我从JSON文件加载地图。我实际上将其加载到核心数据,数据库中,并从针对数据库查询提取。这样,如果您执行任何操作,它将直接命中数据库。 5,5上有什么?只是查询数据库。很好用我只是不知道如何在SpriteKit中做弹出窗口。我尝试将实际的弹出框添加到地图所在的内容视图中,但这只是使屏幕变暗了一点。我认为那不是一个很好的锚点。

解决方法

在HIG“人机界面指南”中,它们称为“警报”或“警报”表,您可以使用简单的代码创建警报

let alert = UIAlertController(title: "Did you bring your towel?",message: "It's recommended you bring your towel before continuing.",preferredStyle: .alert)

alert.addAction(UIAlertAction(title: "yes",style: .default,handler: nil))
alert.addAction(UIAlertAction(title: "No",style: .cancel,handler: nil))

self.present(alert,animated: true)

您可以通过此链接https://learnappmaking.com/uialertcontroller-alerts-swift-how-to/

了解更多有关编程,样式等的信息