当前位置: 首页 > 知识库问答 >
问题:

从单元格中删除子视图以解决自动布局问题

徐皓君
2023-03-14

当不应显示视图时,删除单元格的自动布局约束的最佳方法是什么?

我们有一个单元格,它的布局大约有6-7个视图。其中一个视图是星级。当星级不可用时,我们不想显示视图。目前,我们隐藏视图,但这会保留自动布局约束。

类似的问题 - 当视图被隐藏时,如何使用自动布局来移动其他视图?

这就是上面提到的正在讨论的观点。当没有可用的星级评定时,我们希望从其超级视图中删除此视图。我们的问题是,如果我们从< code>cellForRow中的superview < code > removeFromSuperview 中删除视图...那么下一个单元格会受到影响,因为视图不会被再次添加。

共有3个答案

凌和悦
2023-03-14

我发现的最佳途径是创建单独的单元格布局,并根据信息是否可用来决定使用哪种布局。这意味着在IB中创建第二个原型单元,没有所讨论的视图和不同的约束,但按预期工作。对这方面的其他建议持开放态度。

梁丘凯定
2023-03-14

记住变量中的约束(用于显示/隐藏视图)并删除它约束。并删除此约束,如果需要更改视图,请替换为新约束。

例如:

视图具有widthheightshow and replace约束,其中对于隐藏视图, /code>以及 0.05 height将为零。

羊舌新荣
2023-03-14

(我会发表评论以要求澄清,但还没有声誉。

您是否有可能隐藏相关单元格的视图?

如果我明白你在说什么,你是在暗示当你创建一个新单元格时,从它的超级视图中删除有问题的视图会产生一个问题。所以,当你退出一个新单元格时,只需检查你的星数属性,如果是

另一个选项是将周围视图固定到其父视图,而不是将其固定到要删除的视图。这样,删除星级评定视图时,周围视图的布局约束保持不变。

 类似资料:
  • 我有一个带有一堆单元格的表视图(自定义单元格,它只有它的内容视图)。 在 中,我正在向自定义单元格的content视图添加一个预定义的UIView(它有几个子视图)。我之前为UIView及其子视图设置了所有约束。 最后但并非最不重要的是,我为我的自定义单元格的内容视图(superview)和UIView设置了垂直和水平约束,UIView是在(subview)之前添加的。 约束字符串如下所示: 不幸

  • 我遇到了自动布局的问题,似乎无法找到应该很容易实现的答案。 我有以下视图层次结构: 标签上的前导/尾随限制使它们在更薄的设备上更高(iPhone 4s vs iPhone 6)。 为了让UIScrollview正常工作,我需要在UIScrollView内部设置UIView的高度约束,以避免出现“不明确的高度”警告。 但在iPhone 4s上运行时,UIView不够高,无法容纳它的子视图。 到目前为

  • 对于我的表视图单元格的动态高度,我从此链接中引用。在 UITableView 中使用自动布局进行动态单元格布局 这是我的表视图数据源和委托方法的代码 我有 2 个问题: > 我的问题是我在线路附近收到错误 在和。 为什么我必须在单元格中同时写入标签文本“和? 另外,我是否缺少实现单元动态高度所需的任何内容?

  • 我想利用iOS 8中新增的动态高度。我需要在UITableViewCell中放置一个UICollectionView。我想确保集合视图中的所有单元格在屏幕上都可见,因此表格单元格的高度应该增加以适合集合视图。我差点就要工作了。我只是无法使表格单元格的大小合适——它的高度要么太长要么太短,在我与表格交互之前,一些布局问题是可见的(更多信息请参见下文)。 我已经将集合视图的自动布局约束设置为表的单元格

  • 我正在编写一个数独应用程序,目前正在研究游戏生成算法。我设法想出了如何快速生成解决方案(而不是解决方案)。然而,如何删除一些数字,使其真正成为一个谜,我感到困惑。我的第一个倾向是根据难度随机移除一定数量的单元格,但这不是正确的算法,因为它通常会呈现无法解决或有多个解决方案的谜题。它还可能生成无法反映所需难度的谜题。 这是我到目前为止拥有的代码。我删除了大部分不相关的代码,但如果您想看到下面未实现但

  • 我为包含和的自定义单元格创建了一个文件。宽度是固定的,但高度应根据下载图像的大小进行调整。 此外,单元格高度应该调整,以保持它与图像视图之间的边距。 当我读到几篇关于自动布局的文章时,我不太确定我在这里做了什么:(如果有任何错误,请指出正确的方法) > 为了保持和之间的边距,我应该创建一个约束。 前一步是通过选择和>,然后转到编辑器- 到目前为止,假设如果我调整图像视图的高度,单元格会自动调整自己