首页 > 解决方案 > iOS按比例缩放元素与视口的相对距离

问题描述

我是一名需要聪明开发人员帮助的设计师。请不要把我扔出去。=P

我目前在 Sketch 中打开了三个画板——iPhone SE、iPhone 8、iPhone XS Max 设备尺寸。有一个圆形,居中。所有画板都是@1x。只要所有设备都是@1x,大小为 256 px 的形状在所有设备尺寸上的尺寸都是相同的。只是形状和视口之间的距离增加了。

没有缩放...

没有缩放的示例

有没有一种原生的 iOS 方法可以根据到视口的相对距离来缩放它?

基于到视口的相对距离的比例缩放示例

基于到视口的相对距离的比例缩放示例

请注意,形状将由不同的元素组成,例如显示各种信息的图表。我选择了一个简单的形状来表达观点。

我问这个问题是因为圆形将是一个非常突出的元素,如果它的大小受到 iPhone SE 需要适当支持的事实的严重限制,那将是一种耻辱。

非常感谢你的帮助!

标签: ioslayout

解决方案


添加以下约束:

  1. 相对于其父视图水平居中圆形视图。
  2. 使用Equal Widths约束将圆的宽度设置为等于其父视图的宽度,乘数为0.8.
  3. 使用带有 multiplier 的Aspect Ratio约束将圆形视图的高度设置为等于圆形视图的宽度1
  4. 最后,使用 constant 将顶部边缘约束从圆添加到其父视图32

这将使圆圈占视图宽度的 80%,而另外 20% 的宽度均匀分布(各 10%)到两侧,并且高度将增长以匹配宽度。


推荐阅读