我有乘法器的问题,无法理解这个功能是如何工作的.例如,我有视图有6:1乘数(To SuperView.Leading)如下所示.
我的问题是6:1的关系,6和1是什么意思.并且在2:1的关系中,2和1的意思是什么.类似的考虑你有三个视图,如下图所示.子视图和superView之间总共有4个空白区域.我怎么说每个空白区域必须是SuperView.Width / 6(并且每个空白宽度必须相等)
提前致谢.
解决方法
使用自动布局时,尤其是在使用比例布局时,必须使用乘数.
我必须在这里解释一些数学.
我们知道直线方程.
Y = Mx C.
在上面的等式中.假设M是你的乘数,C是你的常数.
因此假设你有超级视图(如果是iphone 6s plus)
414(宽)x 736(高)尺寸.在该视图中假设您创建了子视图.
现在,如果您希望子视图大小超出superview大小的一半,那么只需将两个约束从子视图拖到superview. (即等宽和等高)
看到这张图片
显然现在你会收到一个错误.就像我得到的一样. (见下图)
现在逐个单击两个约束,并使用乘数为0.5.然后使用上面的直线方程.
这里0.5表示你想要subview = superviewWidth / 2.0的宽度,即212 px.
换句话说,您也可以提供乘数212:414.
Y即subviewWidth =((M即0.5)*(x即414,即superviewWidth))(常数,即零)
最后你得到subviewWidth = 212 px
同样适用于子视图的高度.提供乘数0.5或368:736.
完成所有操作后,不要忘记单击子视图并更新帧.
这种方式常量和乘数将起作用.