最近我将我的iOS项目更新为Xcode8所需的Swift 2.3。 Xcode8中引入了一个新的功能,它是View As:
函数,我可以切换到不同的设备,直接从界面构建器查看结果,而无需实际运行应用程序。这很快成为我在Xcode8中最喜欢的功能。但在处理UIImageView时,我注意到了使用此函数的一些错误行为。
在界面构建器中,UIImageView仅在我输入图像源后才能在iPhone 6s Plus中正确显示图像。在我切换到View as:
选项中的其他设备后,它在图像上显示一个大问号。
如您所见,当我将其设置为以iPhone 6s Plus身份查看时,图像会正确显示。
切换到任何其他设备时,图像将变为未知。虽然这不会影响最终结果,但在app运行时图像仍能正确显示。只是在界面构建器中无法正确显示的情况下感觉非常错误。
答案 0 :(得分:2)
刚刚回答了问题here。
解决方案:
我遇到了同样的问题而且我发现它是因为我的图像大小与#34; View as"相对应。故事板中选择的设备(左下角)。
如果您选择了需要@ 2x图像的设备(例如:iPhone 6s)并且您只有@ 3x图像(就像我一样),您将看到问号。如果您添加的图像大小与故事板中使用的设备大小相对应,则图像将显示在imageView中。
基本上,您希望拥有所有3种尺寸的图像:@ 1x,@ 2x和@ 3x。