【问题标题】:UITableView showing extra separator lines, on top of cells, when reloading pageUITableView 在重新加载页面时在单元格顶部显示额外的分隔线
【发布时间】:2020-08-28 12:46:33
【问题描述】:

我有一个包含多个部分的 UITableView。当我的标签页第一次加载时,一切看起来都很好。但是当我导航到不同的选项卡并返回时,我的 UITableView 有一些额外的分隔线。

我验证 numberOfRowsInSection 正确返回 2。

我的行高设置为 AutomaticDimension。

我在 viewDidAppear 中调用 reloadData。

我尝试将表格单元格的背景颜色设置为白色,但多余的线条仍然可见。

UITableView 位于 UIScrollView 内部,我知道这是不受欢迎的,但我正在进行计算以计算 TableView 的大小。一切都在初始加载时完美运行,直到我返回选项卡才得到额外的行。

【问题讨论】:

  • 检查你的视图调试器应该会给你关于问题所在的提示。
  • 这是我第一次听说 View Debugger。我正在用 Xamarin 编写这个应用程序,所以我无法访问所有 XCode 的工具。
  • 你能把代码贴在 ACCOUNT 视图控制器中吗?
  • 这一切都是在 Storyboard / IB 中设计的吗?还是通过代码添加视图?
  • 我没有使用 Storyboard,我所有的视图都是用代码创建的。 @ColeX-MSFT,给我一点,我会用一些代码上传我的帖子。

标签: ios uitableview xamarin.ios


【解决方案1】:

在我的 AccountViewController 中,我正在调用 API 来获取用户在 ViewDidAppear 中的获取帐户信息。

我不会创建新的 TableViewSource,而是清除现有数据,并使用 API 调用的结果重新填充它。流程是这样的。

  • 清除源数据
  • 调用 API
  • 使用 API 数据填充源
  • 重新加载表数据

我最终通过在清除源后调用 Reload Table Data 来解决问题。

  • 清除源数据
  • 重新加载表数据
  • 调用 API
  • 使用 API 数据填充源
  • 重新加载表数据

也许不是最有效的方法,但在页面的当前结构中是最容易实现的。

【讨论】:

    猜你喜欢
    • 2011-03-02
    • 1970-01-01
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    • 2016-10-03
    • 2015-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多