ios - View 负载上的更改约束常量没有影响

标签 ios uiimageview autolayout uipageviewcontroller

我有 UIPageViewController包含简单的UIViewController s。 VC 的 View 包含一个 UIImageView (方面适合)在顶部和底部的 UITextView。
ImageView 的 LayoutConstraints 是:

  • 固定宽度:有一个导出到 VCs 级
  • 固定高度:有一个通往 VC 级的 socket
  • 中心 X 等于 super View centerX
  • Top 等于 Superviews MarinTop (+8)

  • ImageView 的 LayoutConstraints 是:
  • 顶部等于 ImageView 底部
  • 底部等于 super View MarginBottom (+8)
  • 宽度等于父 View 宽度(乘数为 0.8)

  • 这按预期工作。

    但是当 VC 被加载并且有图像要显示时,我想改变 imageView 的大小。有最小和最大尺寸,如果 ImageView 更小或更大,则需要调整其大小。否则,imageview 必须获取图像的大小。

    所以我计算实际图像的大小并为两个 LayoutConstraints 设置常量。这些值是正确的,但 ImageView 没有改变。

    我尝试将它们设置为 viewWillLayoutSubviews但没有变化。

    我究竟做错了什么?

    最佳答案

    尝试在 viewDidLayoutSubviews 中更新您的 View :

    - (void) viewDidLayoutSubviews {
     // setup your constraints here
    }
    

    希望这可以帮助。

    关于ios - View 负载上的更改约束常量没有影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37858361/

    相关文章:

    ios - 如何增加/减少UIImage的亮度,并且需要保存生成的图像?

    iphone - 如何在我的应用程序中实现 "Choose Existing Photo",就像在默认的 iphone 电话簿中一样?

    ios - 程序化自动布局 UI 元素

    ios - 设置视觉格式语言时 iAutoLayout 崩溃

    ios - Interface Builder 中的 NSLayoutConstraint "installed"属性

    ios - 如何覆盖单例类 Objective C 中属性的 getter/setter

    ios - 将日期字符串插入有序日期字符串数组中正确的索引处

    iphone - ImageView 无法放大

    ios - 如何从 Swift 中的闭包中获取数据

    ios - 点击或按住字体图标时出现问号