将2个图像视图约束在一起以保持它们之间相同的恒定距离

问题描述 投票:0回答:1

下面我的快速代码使用nslayoutconstraint将图像视图放置在视图控制器上。我的问题是,当应用程序在iPad上构建但在iPhone上看起来不错时,存在差距。我附上了一个想象,解释下面的情况。我尝试将下面的约束链接到我评论的位置,但它不起作用。下面的代码是有问题的2个imageview的。本是它们上方的大图像视图。

enter image description here

        takePhoto.topAnchor.constraint(equalTo: ben.bottomAnchor, constant : 10),
        takePhoto.heightAnchor.constraint(equalTo: view.heightAnchor, multiplier: 0.07, constant: 0),
        takePhoto.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant : 50),
        takePhoto.widthAnchor.constraint(equalTo: view.widthAnchor,multiplier: 0.365,constant:  0),



        importPhot.topAnchor.constraint(equalTo: ben.bottomAnchor, constant : 10),
        importPhot.heightAnchor.constraint(equalTo: view.heightAnchor, multiplier: 0.07, constant: 0),
        importPhot.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant : -50),
        importPhot.widthAnchor.constraint(equalTo: view.widthAnchor,multiplier: 0.365,constant:  0),
         //constraint below trying to keep a constant link between the imageviews
        importPhot.leadingAnchor.constraint(equalTo: takePhoto.trailingAnchor, constant: 5),
swift imageview nslayoutconstraint
1个回答
0
投票

importPhot上,您正在将宽度锚与前导锚和尾随锚混合在一起,这没有意义。您必须选择一个选项。

在您的情况下删除

importPhot.widthAnchor.constraint(equalTo: view.widthAnchor,multiplier: 0.365,constant:  0),

现在importPhot锚定到view.trailingAnchortakePhoto.trailingAnchor。对于您的用例,我建议将其锚定在屏幕中间。例如:

takePhoto.topAnchor.constraint(equalTo: ben.bottomAnchor, constant : 10),
takePhoto.heightAnchor.constraint(equalTo: view.heightAnchor, multiplier: 0.07, constant: 0),
takePhoto.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant : 50),
takePhoto.trailingAnchor.constraint(equalTo: view.centerXAnchor, constant :-5),

importPhot.topAnchor.constraint(equalTo: ben.bottomAnchor, constant : 10),
importPhot.heightAnchor.constraint(equalTo: view.heightAnchor, multiplier: 0.07, constant: 0),
importPhot.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant : -50),
importPhot.leadingAnchor.constraint(equalTo: view.centerXAnchor, constant: 5)
© www.soinside.com 2019 - 2024. All rights reserved.