OGeek|极客世界-中国程序员成长平台

标题: objective-c - 将 UITableView 扩展到全尺寸? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 15:52
标题: objective-c - 将 UITableView 扩展到全尺寸?

我有一个 UIViewController。其中有一个 UIScrollView,里面有几个 View 。底部是一个 UITableView。

此 UITableView 是动态的,将显示少量或大量行。无论哪种方式,我都希望 UITableView 以全尺寸显示,以便用户可以使用父 UIScrollView 向下滚动到它的底部,而不是 UITableView 内的 UIScrollView。

我已通过禁用 UITableView 的滚动来尝试此操作(效果很好)。然后我尝试在运行时扩展 UITableView 以便所有行都可以正确显示。

但是,这部分不起作用。出于某种原因,尽管 UITableView 非常大,但并非所有行都被显示。

我已经像这样扩展了 UITableView:

CGRect frame = tableView.frame;
frame.size.height = 5000;
tableView.frame = frame;

我错过了什么? UITableView 中是否还有另一个 View 需要展开以显示所有行?

对不起,如果这是一个愚蠢的问题,我上个月才使用 iOS。

提前感谢您的帮助


为了澄清,这是问题的屏幕截图。

红色区域是 UITableView,所以它的大小肯定是正确的。但是,应该有 10 个表行。只有 5 个,如果我增加表行的大小,甚至更少。

我需要做什么才能显示所有行?我需要调整什么大小?

enter image description here



Best Answer-推荐答案


虽然我看到您已设法使其运行,但在您自己的 UIScrollView 中放置 UITableView 可能意味着表格 View 无法有效地管理其内容单元格就像它处理自己的滚动时一样。

但是,如何添加自己的自定义 View 并让它们随着表格单元格滚动?通过使它们成为 UITableView 的 subview 。如果您向 UITableView 添加一个或两个 subview ,它会将它们定位在其内容的上方和/或下方,并使用自己的单元格滚动它们。

下面的屏幕截图显示了它在 XCode 界面编辑器中的外观。请注意, Root View 是 UITableView,它包含页眉和页脚的两个 subview ,这些 subview 可以包含您需要的任何 subview 。

XCode interface editor showing subviews of a UITableView

关于objective-c - 将 UITableView 扩展到全尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12152394/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4