创建应用程序时,是否可以获取设备屏幕的尺寸,然后将尺寸除以一个数字,以便所有UI元素在所有设备上看起来都相似?
我知道这显然可以做到,但这是我应该考虑做的事情吗?或者我应该考虑创建多个storyboard文件以涵盖每个iOS设备?或者是否有一个功能,故事板允许您这样做,我还没有发现它?
如果在以编程方式添加UI元素时将UI元素的大小设置为特定数字(而不是比率),则在使用具有不同屏幕大小的其他设备时,整个屏幕看起来会略微偏离。因此,如果我想以编程方式为所有设备创建用户界面(没有故事板),我是否必须为每个设备编写不同的代码?这就是为什么我想知道是否更好地使用尺寸比率。通过这样做,您只需要编写一次代码。
哪种方式最适合设计所有屏幕尺寸?
答案 0 :(得分:1)
创建应用程序时,可以获取尺寸 设备的屏幕然后用尺寸划分尺寸 这样所有UI元素在所有设备上看起来都相似吗?
没有。只有在适合的地方它才是合适的。有时情况允许这种情况,但通常不会。由于设备的绝对大小和比例都不同,不同的布局需要不同的行为和交互。
在用户中思考'透视。你想使用这样的应用吗?好吧,如果你不需要用户体验质量,做任何事情都没关系。
没有魔力。严格地说,在最坏的情况下,您需要始终准备为每个设备编写分离版本的布局代码。如果您有可以共享布局代码的情况(使用任何技术),那就很幸运。
要优化生产,您可以尝试按类似比例对设备进行分组。 Apple称这种布局为成语。通常iOS设备构建两组 - 电话和打击垫。在这种情况下,您需要确保所有UI组件支持最小范围的布局灵活性,以处理额外的屏幕比例碎片。利用
NSLayoutConstraint
为此。
根据我的经验,这是最节省时间的方法。有时只是制作所有版本的布局更好,但这种情况很少发生。