UITableview在向下滚动时不可见最后一个单元

问题描述:

我对iOS非常陌生。我有一个用许多自定义单元格填充的UITableView,但当向下滚动时,底部单元格不可见。我的UITableView的Y值是44,高度是480.向下滚动时,只有最后一个单元格的一半是可见的。我该如何解决这个问题。UITableview在向下滚动时不可见最后一个单元

在此先感谢。

使用 -

tableView.contentInset = UIEdgeInsetsMake(0, 0, 120, 0); //values 

传递是 - 上,左,下,按照您的需求正确

通行证底部偏移。

+1

这并没有解决实际问题,视图本身没有对齐内容。 – 2012-08-13 04:25:28

+0

这帮助我解决了一个稍有不同的问题。在哪里我想tableview滚动通过其最后一个单元格显示一个活动指标。投我一票! – Tander 2014-03-13 13:05:25

+0

这也解决了我的问题。使用自定义导航控制器控件呈现表视图,并具有与iDia相同的问题。 – mafiOSo 2014-07-30 09:24:52

如果顶部有一个可见的状态栏,那么它将占用20px,这会将tableView按下来。为了避免这种情况,做出的tableView高度460而不是480

+0

虽然你不应该硬编码状态栏的高度值,但应该使用类似于这个答案的东西http://*.com/a/7038870/707983 – 2012-08-13 04:28:43

那是因为你设置你的tableview的帧错了,如果你的观点有一个导航栏,通常使用此代码:

CGRect frame = self.view.bounds; 
frame.height -= 44; 

44是导航栏的高度。

如果你是在iOS7并使用导航控制器工具栏,请务必将其设置为半透明:

self.navigationController.toolbar.translucent = NO; 

对我来说,这是工作。

我注释掉我的代码

-(void)viewWillLayoutSubviews 
{ 
dispatch_async(dispatch_get_main_queue(), ^{ 
    //This code will run in the main thread: 
    CGRect frame = tableViewObj.frame; 
    frame.size.height = tableViewObj.contentSize.height;//commenting this code worked. 
    tableViewObj.frame = frame; 

}); 

} 

就是这样。它为我工作。请确保你在实现文件中没有改变tableview框架。