我有一个带有单元格的简单表格视图。当我在模拟器中运行应用程序并检查层次结构时,它没有在单行中对齐,而是看起来像嵌套的。
我担心的是表格视图单元格没有单行对齐。但对于其他表格视图单元格位于同一行,请检查第三张图片。
有人可以帮我解决这个问题吗?
调试视图层次结构是正确的。正如您在第二张照片中看到的,UITableView 与 UIView 处于同一级别(位于安全区域下方)。与第一张照片对应,它们是
Table View
和Top View
。该表格视图将单元格作为其子视图。
分解视图层次结构:您的
HistorySearchView
是一个视图控制器,它是 UINavigationController 的子级,而这个导航控制器是 UITabBarController 的 tab item
。
A
UITableView
在“幕后”做了很多的工作。
一项重大任务是管理其单元格的高效显示 - 请记住,单元格是重复使用。
当您开始使用表格视图时,会添加单元格。当您滚动时,将会添加一些更多单元格...但随后它们开始被重用。
另请注意,滚动指示器视图是层次结构的一部分!
因此,根据单元格高度(以及,我确信还有许多其他因素),表格视图可能添加 3 个单元格,然后添加滚动指示器视图,然后再添加 2 个单元格 - 为您提供“交错”层次结构。
当您继续滚动时,表格可能(几乎肯定将会)重新排列单元格的顺序。因此,每次您使用“调试视图层次结构”时,层次结构中的单元“级别”都会发生变化。
这是完全正常的,并且除非我们对细胞做一些我们可能不应该做的事情,否则不会产生不良影响。