【问题标题】:Changing the constraint of an imageview in a cell programmatically以编程方式更改单元格中图像视图的约束
【发布时间】:2016-07-17 02:18:16
【问题描述】:

我真的试图让这件事发挥作用。我阅读了很多文章,但没有一篇文章给出了正确的解决方案。我想从 xcode 中得到的只是让我以编程方式更改单元格中图像视图的顶部约束。我已经为 ipad 全屏设置了约束,但我想为 ipad Pro 调整一些约束。

首先我尝试了这个:

- (void)updateConstraints
{
     [super updateConstraints];
     self.imageViewTopConstraint.constant = 300.f;
} 
- (void)awakeFromNib {
//    // Initialization code
    [self setNeedsUpdateConstraints];
}

它没有工作。

然后我试着把这条线

self.imageViewTopConstraint.constant = 300.f;

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

还是不行。我调整了单元格高度,但它也不起作用。

你们能帮帮我吗?

P.S:xcode 新手。

提前百万感谢。

【问题讨论】:

  • imageViewTopConstraint 是如何定义的?
  • 你试过[单元格 updateConstraintIfNeeded];更改约束常量值后。
  • @InderKumarRathore 我已将 nslayoutconstraint 的 iboutlet 连接到自定义单元格类中
  • @BharatModi 没用
  • 除了您尝试过的或大家建议的之外,没有其他解决方案。似乎您设置的约束不正确,或者您没有正确连接约束出口。您是否收到约束中断日志?同时分享您的单元格的屏幕截图和您设置的约束。

标签: ios objective-c xcode ipad autolayout


【解决方案1】:

您是否将 imageView 的底部约束设置为单元格的底部或使用标签链接到单元格的底部?您是否收到约束冲突异常?您可以使用符号添加符号断点:UIViewAlertForUnsatisfiableConstraints,或在控制台输出中搜索约束冲突。如果是这样,您需要调整约束并删除底部约束之一。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多