【问题标题】:ios: Change the height of UIImageView with constraint inside UITableViewios:在 UITableView 内使用约束更改 UIImageView 的高度
【发布时间】:2018-07-26 23:46:24
【问题描述】:

在我的应用程序中,我正在处理UITableView,我正在使用UIImageView,方法是在情节提要上设置约束以显示图像。我所需要的只是当没有可用图像时,ImageView 的高度将变为 0,否则如果图像可用高度为 150。

【问题讨论】:

  • 那是什么问题?
  • 您可以添加该单元格的屏幕截图吗?
  • 问题已更新
  • @PrashantTukadiya 我不知道如何以编程方式为 uiimageview 设置高度约束
  • 您可以在情节提要中添加高度约束并将该高度约束链接到 IBOutlet NSLayoutContraint。

标签: ios objective-c uiimageview autolayout


【解决方案1】:
  1. 将 ImageView 赋予 FixHeight 约束
  2. 创建该 FixHeight 约束的 IBOutlet

    @IBOutlet 弱变量 imgviewHeightConstraint: NSLayoutConstraint!

  3. 在您的cellForRowAtIndexPath 这边检查

    if image available {
         cell.imgviewHeightConstraint.constant = 150
    } else {
         cell.imgviewHeightConstraint.constant = 0
    }
    

【讨论】:

  • 在“UITableViewCell”类型的对象上找不到属性 imgviewHeightConstraint
  • 您需要创建该 FixHeight 约束的 IBOutlet。它不是财产
【解决方案2】:
  1. 在故事板中

    • 设置你的imageView约束高度<= 150
  2. heightForR0w

    • return UITableViewAutomaticDimension
  3. estimateHeight

    • return 200

【讨论】:

    【解决方案3】:

    尝试向左、上、右添加约束。在 viewController 中为 NSContraint 添加一个 IBOutlet 用于高度。并且在初始化单元格时检查图像是否可用。根据设置 IBOutlet 值。

    将该 IBOutlet 添加到 UIImageView 的高度约束中。

    将 TableView 单元格高度设置为自动维度。

    如果有帮助或有任何问题,请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-02
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      相关资源
      最近更新 更多