我有一个 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 个,如果我增加表行的大小,甚至会更少。
我需要做什么才能显示所有行?我需要调整什么大小?
最佳答案
虽然我看到您已设法使其运行,但将 UITableView
放置在您自己的 UIScrollView
中可能意味着表格 View 无法有效管理其内容单元格就像它处理自己的滚动时一样。
但是,如何添加自己的自定义 View 并让它们随表格单元格滚动?通过使它们成为 UITableView
的 subview 。如果您向 UITableView
添加一两个 subview ,它会将它们放置在其内容的上方和/或下方,并使用自己的单元格滚动它们。
下面的屏幕截图显示了 XCode 界面编辑器中的外观。请注意, Root View 是 UITableView,它包含页眉和页脚两个 subview ,这些 subview 可以包含您需要的任何 subview 。
关于objective-c - 将 UITableView 展开到完整尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12152394/