gpt4 book ai didi

ios - 如何更新在 UITableViewCell 中添加的 View ?

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

我在做什么?

我正在向我的 UITableViewCell(未子类化)添加动态 View 。

单元层次结构:

UITableView > UITableViewCell > cell.contentView > MainView > ([Number Of PointView] + [选项 View ])

这里是:

enter image description here

当用户点击“添加另一个点”时,我将添加一个 PointView(与上面相同):

Y 位置 [ ] X 位置 [ ]

看起来像这样

enter image description here

我完成这项工作的逻辑是什么?

  • 我正在从 cell.contentView 获取 MainView
  • 然后获取添加到 MainView 中的最后两个 View (Point View 和 Options View)。
  • MainView 中添加另一个 PointView
  • 根据上一个 PointView 更新新添加的 PointView 的框架,并更新 OptionsView 的框架。
  • 调整 MainView 的高度
  • 并重新加载特定单元格。

我能够让它工作,以确认我已经为那个 MainView 记录了框架和 subview 。但是一旦我再次点击“添加另一个点”按钮,我发现 MainView 根本没有更新?

我的简单问题是,如果我有一个 MainView(我从 Cell 中获取),我可以直接更新它吗?

附言我已经有了一个很差的解决方案,就是删除 MainView 并重新创建新的——我发现这是不必要的。有什么想法吗?

最佳答案

简短的回答,是的,你可以。

cell.contentView 是一个占位符。您可能遇到的是一个完全不同的问题:UITableViewCells 被缓存,然后被系统回收和重用。

任何时候响应cellForRowAtIndexPath,基本上都需要重新设置内容。

关于ios - 如何更新在 UITableViewCell 中添加的 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31488633/

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