【问题标题】:constraint together 2 imageviews to keep the same constant distance between them将 2 个图像视图约束在一起以保持它们之间相同的恒定距离
【发布时间】:2020-01-02 04:01:21
【问题描述】:

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

        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),

【问题讨论】:

  • 你也可以使用UIStackView

标签: swift imageview nslayoutconstraint


【解决方案1】:

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

在你的情况下删除

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

现在importPhot 锚定到view.trailingAnchor 和takePhoto.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)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-24
    • 1970-01-01
    • 1970-01-01
    • 2015-01-17
    • 1970-01-01
    相关资源
    最近更新 更多