中心页脚UILabel分组UITableView – Swift

我目前正在向我的应用添加信息页面,并希望显示以分组UITableView的页脚为中心的应用程序的版本号。 我有它显示,但我不知道如何去集中它。

我已经看过使用tableviews viewForFooterInSection; 这将是未来的正确方法,还是有更简单的方法?

提前谢谢了。

关于左对齐页脚标签的屏幕

只需在tableView中添加一个页脚,它就会放在底部,无论你有多少个部分

let tableViewFooter = UIView(frame: CGRect(x: 0, y: 0, width: tableView.frame.width, height: 50)) tableViewFooter.backgroundColor = UIColor.greenColor() let version = UILabel(frame: CGRectMake(8, 15, tableView.frame.width, 30)) version.font = version.font.fontWithSize(14) version.text = "Version 1.x" version.textColor = UIColor.lightGrayColor() version.textAlignment = .Center; tableViewFooter.addSubview(version) tableView.tableFooterView = tableViewFooter 

如果要为每个部分添加页脚

tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView创建一个UIView() tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView ? 方法并为该视图添加标签并将标签置于其中心。

例:

 func tableView(tableView: UITableView, viewForFooterInSection section: Int) -> UIView? { let view = UIView() let version = UILabel(frame: CGRectMake(8, 15, tableView.frame.width, 30)) version.font = version.font.fontWithSize(14) version.text = "Version 1.x" version.textColor = UIColor.lightGrayColor() version.textAlignment = .Center; view.addSubview(version) return view } 

嗯,你的想法很好,这个代码示例将帮助你正确完成它。

 - (UIView *) tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { static UIView *footerView; if (footerView != nil) return footerView; NSString *footerText = NSLocalizedString(@"Some Display Text Key", nil); // set the container width to a known value so that we can center a label in it // it will get resized by the tableview since we set autoresizeflags float footerWidth = 150.0f; float padding = 10.0f; // an arbitrary amount to center the label in the container footerView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, footerWidth, 44.0f)]; footerView.autoresizingMask = UIViewAutoresizingFlexibleWidth; // create the label centered in the container, then set the appropriate autoresize mask UILabel *footerLabel = [[[UILabel alloc] initWithFrame:CGRectMake(padding, 0, footerWidth - 2.0f * padding, 44.0f)] autorelease]; footerLabel.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin; footerLabel.textAlignment = UITextAlignmentCenter; footerLabel.text = footerText; [footerView addSubview:footerLabel]; return footerView; }