启动屏故事板

3
作为启动屏幕,我希望有一个精确的开始页面图像,它会在启动后立即出现。因此,我截取了所有分辨率的开始页面截图,包括纵向和横向。然后我删除了所有字体,因为我生成了两种不同语言的应用程序变体,文本(例如按钮中的文本)是不同的。启动屏幕应该适合这两个变体。
在Images.xcassets中,我添加了LaunchImage,并将所有位置与正确的分辨率(iPhone和iPad)分配给了它们。 LaunchScreen.storyboard在ViewController中有一个ImageView,其图像名称为LaunchImage。
结果: 1. 显示的所有启动图像都被缩放,即使正确的分辨率可用。 2. 只使用纵向图像,即使在横向模式下也是如此,因此被缩放和扭曲。 3. 在iPad上只显示iPhone图像,包括纵向版本在内,在横向模式下相应地缩放。 4. 在某些设备上(例如iPhone X),只显示白色或黑色屏幕,无论是纵向还是横向。
在任何情况下,都不会显示正确的启动屏幕。您可以在图像上看到所有相关区域以及所有使用的启动图像列表。
我做错了什么或者漏掉了什么?

进入图像描述 补充: 我刚刚按照另一个提示禁用了UIImageView中的“清除图形上下文”,并将显示更改为“Aspect Fit”。 结果:纵向启动图像仍然在iPad中使用,但不再缩放,并且现在居中对齐。 因此,现在最重要的问题是为什么iPhone纵向启动图像在iPad中两个方向都被使用。


为什么不直接将主故事板中的第一个场景复制到启动故事板中呢?您需要删除自定义类。启动故事板的整个重点在于无需担心不同设备尺寸。 - Paulw11
这是一个没有主故事板的旧应用程序。而且xip只是第一个屏幕的一部分。其他部分是在程序中添加的。因此,我的截图是展示下一个显示内容的最佳方式。而且苹果建议在xcassets中使用所有分辨率的启动图像。不知何故,这必须能够正常工作。 - thpitsch
我认为苹果并没有推荐使用启动截图。如果您确实使用了启动截图,则需要添加所有分辨率。您是如何测试的?调试构建通常不会显示正确的启动图像,即使使用启动故事板也是如此。但是,我认为您最终将不得不咬紧牙关转换到启动故事板;一次性解决问题,而不是每次苹果发布新设备尺寸时都要经历这一切。 - Paulw11
我已经按照xcasset LaunchImage中的要求准备好了所有分辨率(在图片中列出)。许多人报告启动图像存在问题,但我找到的所有提示都没有起作用。因此,我已经在图片中收集了所有相关的截图。希望有人能告诉我问题出在哪里。 - thpitsch
我认为这里的讨论对你可能有所帮助 https://dev59.com/nVYO5IYBdhLWcg3wMO1y - Ahmed Wahba
显示剩余2条评论
1个回答

0

如果您正在使用LaunchImage,则应在目标设置中设置该图像。转到您的目标,在常规选项卡下,将启动图像源值设置为您在资源目录中拥有的图像:

enter image description here

同时在 启动屏幕文件 字段中删除文本 LaunchScreen


我现在有: 应用程序图标源 = AppIcon 启动图像源 = LaunchImage 启动屏幕文件 = [空白]与之前相同的问题。 - thpitsch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接