gpt4 book ai didi

ios - 修改单元格 subview 的框架

转载 作者:行者123 更新时间:2023-11-28 21:37:42 26 4
gpt4 key购买 nike

我的 TableView 由带有多个 subview 的自定义单元格组成。
让我们调用其中两个 subview AView 和 BView。它们并排放置。
有些情况下我不想显示 BView(我将其隐藏)。但这意味着我应该使 Aview 的宽度增加 BView 的宽度。

我试图在数据源的 - tableView:cellForRowAtIndexPath: 方法中更改 AView 的框架。没有结果。然后我尝试在我的委托(delegate)的 – tableView:willDisplayCell:forRowAtIndexPath: 中更改它。又失败了。
在这两种情况下,AView 的大小都与 Storyboard 中的大小相同。

那么,AView的frame应该在哪里修改呢?

最佳答案

有很多方法可以做到这一点。我认为非常干净的一个建议是:

  1. 子类 UITableViewCell...例如将其命名为 MyCell。
  2. MyCell 中创建一个 IBOutlet 链接到 BView 的宽度限制。将其称为 BViewWidthConstraint。
  3. MyCell 中创建以下函数:

    func hideBView() -> void {
    self.BViewWidthConstraint.constant = 0
    }
  4. cellForRowAtIndexPath 中,您现在可以:

    if needToHideBView {
    cell.hideBView()
    }

我假设您正在使用 Autolayout 并且设置正确!

关于ios - 修改单元格 subview 的框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33303442/

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