gpt4 book ai didi

objective-c - UITableView 高度基于单元格数

转载 作者:技术小花猫 更新时间:2023-10-29 10:19:45 28 4
gpt4 key购买 nike

我有一个 UITableView,其中的行(单元格)数量可变 - 这些行的高度是恒定的。我想要的是使 UITableView 的高度取决于行数。

此外,我希望 UITableView 能够完全包裹单元格,因此底部没有填充。因此,如果一个单元格的高度为 60,则一个单元格的 TableView 应为 60,两个单元格的 TableView 应为 120,等等...

提前致谢!

最佳答案

您可以访问您的数据源以查找将显示的单元格数。将此数字乘以一行的高度,即可得到整个 TableView 的高度。要更改 TableView 的高度,您可以更改其框架属性。

您可以通过访问表格 View 的 rowHeight 属性来访问表格 View 一行的(恒定)高度。如果用名为 myArray 的数组对象填充 TableView ,则可以使用以下代码:

CGFloat height = self.tableView.rowHeight;
height *= myArray.count;

CGRect tableFrame = self.tableView.frame;
tableFrame.size.height = height;
self.tableView.frame = tableFrame;

您还可以通过询问 TableView 本身而不是数据对象来了解 TableView 将包含多少行。这样的事情应该有效:

NSInteger numberOfCells = 0;

//finding the number of cells in your table view by looping through its sections
for (NSInteger section = 0; section < [self numberOfSectionsInTableView:self.tableView]; section++)
numberOfCells += [self tableView:self.tableView numberOfRowsInSection:section];

CGFloat height = numberOfCells * self.tableView.rowHeight;

CGRect tableFrame = self.tableView.frame;
tableFrame.size.height = height;
self.tableView.frame = tableFrame;

//then the tableView must be redrawn
[self.tableView setNeedsDisplay];

关于objective-c - UITableView 高度基于单元格数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13001944/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com