UITableview在向下滚动时不可见最后一个单元
问题描述:
我对iOS非常陌生。我有一个用许多自定义单元格填充的UITableView,但当向下滚动时,底部单元格不可见。我的UITableView的Y值是44,高度是480.向下滚动时,只有最后一个单元格的一半是可见的。我该如何解决这个问题。UITableview在向下滚动时不可见最后一个单元
在此先感谢。
答
使用 -
tableView.contentInset = UIEdgeInsetsMake(0, 0, 120, 0); //values
传递是 - 上,左,下,按照您的需求正确
通行证底部偏移。
答
如果顶部有一个可见的状态栏,那么它将占用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框架。
这并没有解决实际问题,视图本身没有对齐内容。 – 2012-08-13 04:25:28
这帮助我解决了一个稍有不同的问题。在哪里我想tableview滚动通过其最后一个单元格显示一个活动指标。投我一票! – Tander 2014-03-13 13:05:25
这也解决了我的问题。使用自定义导航控制器控件呈现表视图,并具有与iDia相同的问题。 – mafiOSo 2014-07-30 09:24:52