【发布时间】:2013-02-05 22:58:09
【问题描述】:
是否可以在 iOS 6 的 TableView 中创建按钮?
例如在设置 --> 邮件、日历... --> 单击现有电子邮件帐户(在 iPhone 上)。在此视图的底部有一个“按钮”,表示删除帐户。
这是一个按钮还是只是另一个看起来像按钮的单元格?
我想保留 TableView 附带的标准背景,这就是我询问的原因。我知道我可以缩短 TableView 并添加一个普通按钮。
谢谢
【问题讨论】:
是否可以在 iOS 6 的 TableView 中创建按钮?
例如在设置 --> 邮件、日历... --> 单击现有电子邮件帐户(在 iPhone 上)。在此视图的底部有一个“按钮”,表示删除帐户。
这是一个按钮还是只是另一个看起来像按钮的单元格?
我想保留 TableView 附带的标准背景,这就是我询问的原因。我知道我可以缩短 TableView 并添加一个普通按钮。
谢谢
【问题讨论】:
在 GitHub 上查看我的代码。 https://github.com/eddieios/ECFormView
ECFormView 使用 UITableView 并在 tableFooterView 中添加了一个按钮。我把相关代码放在下面。
UIView *footerView = [[UIView alloc] init];
[footerView setFrame:CGRectMake(0, 0, 320, 100)];
self.tableView.tableFooterView = footerView;
[self.tableView sendSubviewToBack:footerView];
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[footerView addSubview:button];
[button setFrame:CGRectMake(10, 10, 300, 44)];
[button setTitle:@"Submit" forState:UIControlStateNormal];
//[button addTarget:self action:@selector(nextView:) forControlEvents:UIControlEventTouchUpInside];
【讨论】:
您可以通过将按钮作为子视图添加到表视图的tableHeaderView 或tableFooterView 来实现。这篇 SO 帖子描述了一些实现:Adding a UIButton in the header of UITableView header
iOS 6 添加了一个UITableViewHeaderFooterView 类,该类为页眉和页脚实现可重用 视图。这可以提高处理大型表视图时的性能。见:How to use UITableViewHeaderFooterView?
【讨论】: