关于SizeClasses更多的介绍与设备、屏幕的UI适配,请移步:
iOS使用SizeClasses进行各型号横竖屏的屏幕适配
Assets
当通过使用SizeClasses进行屏幕适配,我们可以在不同的屏幕上使用不同的布局,在不同的屏幕方向的情况下使用不同的布局。
不可避免的,我们会遇到一个问题,比如在iPhone的列表上,封面图用了一个正方形,在iPad上是一个长方形。我们想在iPhone上用logo作为占位图,而在iPad上使用一个带slogan的logo作为占位图。
不要跟我说用判断,因为iOS已经给你提供了更好的解决方案—— Assets!

你一定对它相当熟悉,而且或许曾经疑惑过把图片放在这里和直接放在文件夹里有什么区别。
它是Apple专门针对图片推出的管理者,所以你可能不知道它在很多情况,是更好的解决方案。
Render As
Render As是选择图片的渲染模式,如果你曾经因为把图片放在这里,而导致图片在UIBarButton或UITabBar里颜色不正确,就需要在这里选择渲染模式为Original了。

Devices
Devices允许你对不通的设备来设置不同的图片内容,而访问此图片资源的方法仍然是通过UIImage(named:"profile")的方式进行访问,在不同的设备,将显示你设置的图片内容。
比如我们常见的Appicon:

SizeClasses
没错,图片也支持SizeClasses,它允许你指定不同的显示模式下的图片要展示的内容。

你可以选择很多的模式,来指定不同的显示内容。

当然,你可以同时选择设备和显示模式 😂


网友评论