我正在创建一个自定义视图,例如
UIView *footerView = [[UIView alloc] initWithFrame:CGRectMake(0,0,40,0)];
并将其分配给表格视图的页脚,例如
self.tableView.tableFooterView = footerView;
我用框架设置它时确实没有问题,但是我想这样做,我想以编程方式设置它。所以我在做的是
现在我已更改为
[self.tableView.tableFooterView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[_tableView]|" options:0 metrics:nil views:dict]];
[self.tableView.tableFooterView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[_tableView]|" options:0 metrics:nil views:dict]];
但这使我的应用程序崩溃,我们将不胜感激。谢谢。
您不需要为表视图的页脚视图相对于表视图设置约束。页脚视图的位置由表视图本身管理(尽管您可以在页脚视图内部添加约束,即页脚视图及其子视图)。您要返回的是页脚视图的高度。
//Put this in your viewDidLoad
UIView *footerView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,40)];
self.tableView.tableFooterView = footerView;
先进的:
如果您的页脚视图根据页脚视图中的标签或其他视图动态调整大小。然后,您可以将UIView子类化为页脚视图,并重写其固有的内容大小方法以返回页脚视图的实际高度,然后返回self.tableView.footerView.intrinsicContentSize.height
希望这对您有所帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句