首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取没有滚动条的UITableView的高度

获取没有滚动条的UITableView的高度
EN

Stack Overflow用户
提问于 2010-03-27 11:44:36
回答 3查看 18.6K关注 0票数 40

我需要获得UITableView的完整高度(即没有更多可滚动的高度)。有没有办法做到这一点?

我尝试过[tableView sizeThatFits:CGSizeZero],但它只返回0x0 CGSize

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-03-27 12:11:26

尝试从UITableView的超类UIScrollView继承的contentSize方法。但是,您可能会发现contentSize返回了一个不正确或过期的值,因此您可能应该首先调用layoutIfNeeded来重新计算表的布局。

代码语言:javascript
复制
- (CGFloat)tableViewHeight
{
   [tableView layoutIfNeeded];
   return [tableView contentSize].height;
}
票数 94
EN

Stack Overflow用户

发布于 2013-06-20 02:13:18

请尝试传递不同的CGSize参数,而不是CGSizeZero。sizeThatFits:方法使用该参数来计算其结果。尝试从执行该调用的任何类传入self.view.size。

票数 -1
EN

Stack Overflow用户

发布于 2012-01-12 20:55:09

如果一个表视图的行数发生了变化,并且您确实需要知道包含上一次更改的表视图的内容大小,我并没有发现layoutIfNeeded方法实际上有什么帮助。

经过一些修改后,我知道了如何强制表视图重新计算其内容大小。在我的例子中,只需重置表视图框即可使其正常工作:

代码语言:javascript
复制
- (CGSize)com_lohika_contentSize
{
    CGRect theFrame = self.frame;
    self.frame = CGRectZero;
    self.frame = theFrame;
    [self layoutIfNeeded];
    return [self contentSize];
} 
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2528073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档