xcode 启动屏幕图像在SwiftUI中拉伸

oxosxuxt  于 2023-01-27  发布在  Swift
关注(0)|答案(5)|浏览(257)

我希望我能得到一些帮助来解释为什么会发生这种情况。我一直在努力将我一直在学习/构建的应用程序从UIKit切换到SwitchUI,因为这似乎是未来...而且学习起来很有趣。
我已经设置了plist,背景和图像为x1c 0d1x
我第一次运行它的时候当模拟器打开或者我清除和擦除模拟器的时候是这样的:

但是,每次运行应用程序后,图像都会拉伸。

当我在手机上试用时,它似乎每次都在拉伸,我不确定这里发生了什么,只是SwiftUI需要更多的工作还是我错过了某个设置?

3pmvbmvn

3pmvbmvn1#

这似乎是一个SwiftUI错误,仍然没有修复。绕过这个错误的唯一方法是回到故事板。
您必须创建一个启动屏幕情节提要并将其链接到您的项目。

要执行此操作:

  • 创建一个新文件(cmd + n)并选择启动屏幕
  • 在新的情节提要中自定义启动屏幕(不要对图像使用SVG格式)
  • 进入你的项目设置-〉“常规”,选择启动屏幕文件作为你的“启动屏幕文件”,这将在你的info.plist中创建一个新条目
  • 删除info.plist中的旧SwiftUI启动屏幕条目
cu6pst1q

cu6pst1q2#

如果您将.SVG图像用于启动屏幕(适用于设备)。1.-在资源中,选择图像(在列表中),然后选择图像(详细信息)。2.-显示检查器(右上角的按钮)。3.-在“调整大小”选项中,选中“保留矢量数据”。4.-在“缩放”选项中,选择“单一缩放”。
我希望它能对这个反复出现的问题有所帮助,即使在今天的Xcode 14中,这个问题也没有得到真正的解决。

fkvaft9z

fkvaft9z3#

当@1x为200x200px时,将图像大小调整为@1x、@2x和@3x版本。
然后将其上传到资产文件夹并更改info.plistImage Name
这对我很有效。

c9x0cxw0

c9x0cxw04#

我已经解决了改变SVG尺寸的相同问题。
1.从资源中选择启动图像,然后按“Space”按钮。
1.使用子行文本打开。
1.改变宽度和高度(我给予iPhone 12 pro的尺寸在像素,最初是100%)
〈svg宽度=“390像素”高度=“844像素”视图框=“0 0 1500 1500”

r3i60tvu

r3i60tvu5#

我会提到这一点,因为它在技术上为我工作。
关闭设备。再次打开。重新安装应用程序。启动屏幕不再拉伸!
这是一个奇怪的行为,它让我怀疑这是一个错误的iOS,而不是与swiftui。
我从这篇文章的评论中得到了这个答案。

相关问题