gpt4 book ai didi

ios - 在 iphone 6/6 plus 上更改高度限制时移动 UIView

转载 作者:行者123 更新时间:2023-11-28 07:01:51 25 4
gpt4 key购买 nike

我在 UIscroll 内的 UIView 内有一个 UILabelUILabel 中的文本可以改变,所以我用这个方法来改变它的高度限制

func recalculateHeight(){
l_info.sizeToFit();
lc_heightInfo.constant = l_info.frame.height;
}

我在 viewDidLoad() 调用 self.view.setNeedsLayout();self.view.layoutIfNeeded(); 根据用户使用的 iPhone 具有正确的宽度。

在 iPhone 4s/5/5s 上一切正常,但在 iPhone 6/6 上尝试时, View 会移动。

这是它在 iPhone 5s 上的样子: http://i.imgur.com/sGYzW3l.png

这是它在 iPhone 6/6 plus 上的样子: http://i.imgur.com/qeCL22w.png

我已经搜索了一段时间,但没有找到任何类似的东西。

编辑:

约束如下:

  1. UIScrollView 顶部和 UIImageView 顶部之间。 值 = 0
  2. UIImageView 的高度。 值 = 128
  3. UIImageView 的底部和包含 UILabel 的顶部 UIView 之间。 值 = 7
  4. 在顶部 UIViewUILabel 顶部之间。 值 = 17
  5. UILabel 的高度。 这是我要更改的约束条件
  6. UILabel 底部和 UIView 底部之间。 值 = 17
  7. UIView 底部和 UIScrollView 底部之间。 值 = 7

编辑 2:

我检查了 UIImageView 底部和 UIView(编号 3)之间的约束,调试器说它设置为 7。我尝试从代码,但什么也没发生。

我还进入了 View 调试器,它看起来很完美。

有什么想法吗?谢谢!

最佳答案

可能您的 l_info.frame.height 在不同设备上保持不变,但 header imageView 高度发生变化。

检查您如何设置 lc_heightInfo 约束。它应该设置在(标签)容器 View 和顶部的 imageView 之间。这样你的容器 View 将始终与顶部的 imageView 保持相同的距离。

或者,如果该 ImageView 不是 ScrollView 的一部分,那么您应该在容器 View 和 ScrollView 顶部之间设置一个约束,并为 ScrollView 顶部和 header ImageView 设置一个约束。希望这会有所帮助:)

关于ios - 在 iphone 6/6 plus 上更改高度限制时移动 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31843129/

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