gpt4 book ai didi

ios - 如何区分 wR hR 约束变化的方向

转载 作者:行者123 更新时间:2023-12-01 19:55:11 39 4
gpt4 key购买 nike

我正在尝试将 16:9 或 9:16 纵横比约束应用于 UIImageView取决于设备方向,但是由于wR hR = hR wR,对于这种情况,通过约束变化来识别方向是不可能的。 .

如何处理这个问题?

最佳答案

你应该

  • 在 View 上添加两个比例约束,一个是 16:9,另一个是 9:16;确保在 IB 的属性检查器中仅选择了其中一个“已安装”;
  • 添加 IBOutlet对两个比率约束的引用;
  • 在 View Controller 的 viewDidLayoutSubviews (或 View 的 layoutSubviews ),只需查看 bounds 的宽度和高度并相应地激活约束:
    @IBOutlet weak var portraitConstraint: NSLayoutConstraint!
    @IBOutlet weak var landscapeConstraint: NSLayoutConstraint!

    override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()

    let isLandscape = view.bounds.size.width > view.bounds.size.height

    landscapeConstraint.isActive = isLandscape
    portraitConstraint.isActive = !isLandscape
    }
  • 关于ios - 如何区分 wR hR 约束变化的方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43030728/

    39 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com