objective-c - 将 UITableView 展开到完整尺寸?

标签 objective-c ios 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 ,我需要展开该 View 才能显示所有行?

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

提前感谢您的帮助:)


澄清一下,这是问题的屏幕截图。

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

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

enter image description here

最佳答案

虽然我看到您已设法使其运行,但将 UITableView 放置在您自己的 UIScrollView 中可能意味着表格 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/

相关文章:

ios - 从服务器加载图像到标签栏项目

ios - UITableView 一直自动滚动到顶部

ios - 动态原型(prototype)单元未加载到模拟器中

Objective-c主例程,什么是: int argc, const char * argv[]

javascript - Cappuccino - CPSplitView 固定 subview 的大小

ios - scheduledTimerWithTimeInterval 在滚动时不更新计时器方法?

objective-c - 当uialertview进入其委托(delegate)方法时如何隐藏它?

ios - Swift 3.0 无法将 (_, _)->() 类型的值转换为预期参数类型 'ObjectsOrErrorBlock'

ios - CMDeviceMotion 的磁场属性不正确?

ios - Swift:UITableView 未使用 reload() 正确更新数据