SpriteKit 应用仅在任务切换器中显示 grey/white 边框
SpriteKit app shows grey/white border in task switcher only
我正在使用 Xcode 12.5.1 并使用 SpriteKit 创建一个新的 iOS 游戏项目:
- 文件
- 新项目
- iOS, 游戏
- 语言:Swift,游戏技术:SpriteKit
运行 它在 iOS 模拟器上没有任何修改(例如“iPhone 12 mini”)导致此屏幕:
这看起来不错,场景周围有黑色边框。但是,当我从底部滑动进入任务切换器时,黑色边框突然变成了 grey/white 边框:
我也试过把Main.storyboard
中“视图”的“背景”属性改成黑色,对任务切换器的外观没有影响:
这应该很容易通过创建默认的 SpriteKit 示例应用程序来重现,运行 它在真实的 phone 或模拟器上并进入任务切换器视图。
我希望任务切换器中应用程序的背景在任务切换器视图中为黑色,就像应用程序 运行 时一样。请注意,我正在创建的应用程序对我正在使用的 SKSpriteNode
具有固定的宽高比,因此解决方案不应涉及为场景设置不同的大小。基本上它应该适用于任何纵横比和信箱我的 SKSpriteNode
在应用程序视图和应用程序切换器视图中使用黑色信箱的视图。
如果我不得不猜测的话,看起来可能是由于 dark/light 模式。如果应用程序在 AppDelegate
class 中使用 window
,请尝试将其背景设置为 .black
。
或者您可以指定您的应用仅在深色模式下运行(仅当您的应用适用于 iOS 13+ 时才这样做)。您可以通过将其添加到您的 plist 文件来执行此操作:
<key>UIUserInterfaceStyle</key>
<string>Dark</string>
此外,如果您有物理设备,请尝试更改明暗模式,看看是否会导致问题
游戏应用模板似乎缺少 LaunchScreen 故事板,这可能会导致 iOS 在某些情况下回退并以不正确的大小呈现预览。要添加一个,您可以执行以下操作
- 从菜单栏 select 文件 > 新建 > 文件 (⌘N) 和 select 故事板。
- 将新故事板命名为“LaunchScreen.storyboard”。
- 通过 select 打开您新创建的 LaunchScreen.storyboard 文件
来自项目导航器 (⌘1)。
- 从 Storyboard 文档概述 select View Controller 并确保“Is Initial View Controller”在 Attributes Inspector (⌥⌘5) 中 selected。 (See Image)
- 来自项目导航器 (⌘1) select 您的 Info.plist
- 向您的 Info.plist (↵) 添加一个名为“Launch screen interface file base name”的新密钥,并将值设置为“LaunchScreen”。
这应该可以解决问题,但是您可能需要稍微更新游戏场景以解决宽高比的变化。
我正在使用 Xcode 12.5.1 并使用 SpriteKit 创建一个新的 iOS 游戏项目:
- 文件
- 新项目
- iOS, 游戏
- 语言:Swift,游戏技术:SpriteKit
运行 它在 iOS 模拟器上没有任何修改(例如“iPhone 12 mini”)导致此屏幕:
这看起来不错,场景周围有黑色边框。但是,当我从底部滑动进入任务切换器时,黑色边框突然变成了 grey/white 边框:
我也试过把Main.storyboard
中“视图”的“背景”属性改成黑色,对任务切换器的外观没有影响:
这应该很容易通过创建默认的 SpriteKit 示例应用程序来重现,运行 它在真实的 phone 或模拟器上并进入任务切换器视图。
我希望任务切换器中应用程序的背景在任务切换器视图中为黑色,就像应用程序 运行 时一样。请注意,我正在创建的应用程序对我正在使用的 SKSpriteNode
具有固定的宽高比,因此解决方案不应涉及为场景设置不同的大小。基本上它应该适用于任何纵横比和信箱我的 SKSpriteNode
在应用程序视图和应用程序切换器视图中使用黑色信箱的视图。
如果我不得不猜测的话,看起来可能是由于 dark/light 模式。如果应用程序在 AppDelegate
class 中使用 window
,请尝试将其背景设置为 .black
。
或者您可以指定您的应用仅在深色模式下运行(仅当您的应用适用于 iOS 13+ 时才这样做)。您可以通过将其添加到您的 plist 文件来执行此操作:
<key>UIUserInterfaceStyle</key>
<string>Dark</string>
此外,如果您有物理设备,请尝试更改明暗模式,看看是否会导致问题
游戏应用模板似乎缺少 LaunchScreen 故事板,这可能会导致 iOS 在某些情况下回退并以不正确的大小呈现预览。要添加一个,您可以执行以下操作
- 从菜单栏 select 文件 > 新建 > 文件 (⌘N) 和 select 故事板。
- 将新故事板命名为“LaunchScreen.storyboard”。
- 通过 select 打开您新创建的 LaunchScreen.storyboard 文件 来自项目导航器 (⌘1)。
- 从 Storyboard 文档概述 select View Controller 并确保“Is Initial View Controller”在 Attributes Inspector (⌥⌘5) 中 selected。 (See Image)
- 来自项目导航器 (⌘1) select 您的 Info.plist
- 向您的 Info.plist (↵) 添加一个名为“Launch screen interface file base name”的新密钥,并将值设置为“LaunchScreen”。
这应该可以解决问题,但是您可能需要稍微更新游戏场景以解决宽高比的变化。