我的UITableViewController
底部有UIView
。 (使用故事板)。我的UIView
设置为隐藏,然后点击按钮更改状态。首先,我试图使用IBAction
在self.concluidoView.frame = CGRectMake(0, 0, 320, 50);
(buttonClick)上调整我的UIView(基本上增加高度)但是UIView正在消失。
现在,它正在使用UIView
中的以下代码正确展开IBAction
:
[UIView animateWithDuration:1.0
animations:^{
CGRect frame = self.concluidoView.frame;
frame.size.height += 100.0;
self.concluidoView.frame = frame;
}
completion:^(BOOL finished){
// complete
}];
问题是我的UITableViewController没有足够滚动到新的大小,因为UIView
是我tableView
中的最后一项。
我已经尝试了一些方法来解决这个问题,包括手动尝试调整tableview
的大小以将其高度增加到UIView
增加的相同值。我使用了以下代码:
CGRect tableFrame = self.tableview.frame;
tableFrame.size.height += 100;
self.tableView.frame = tableFrame;
[self.tableview layoutIfNeeded];
此代码后,tableview
的滚动容量实际上变小了。我想调整tableview
的大小并允许手动滚动,因为我知道subview
会增加多少,或者自动增加。{{1}}。
答案 0 :(得分:1)
如果您更改了UITableView
的框架,那么您所做的就是让它最有可能延伸到屏幕外。您要做的是获取表格视图以识别UIView
更大。我假设UIView
是您tableFooterView
的{{1}}。尝试执行以下操作:
UITableView
这会强制UIView *footerView = self.tableView.tableFooterView;
self.tableView.tableFooterView = nil;
self.tableView.tableFooterView = footerView;
重新检查页脚视图的大小。在更改之前的页脚视图大小之前,我必须这样做。