我有UITableView
有时是空的,我有UITableView
的页脚。即使表格视图中没有内容,我想要的是始终显示的页脚。这可能吗?或者,只是在UITableView
中添加一个额外的单元格并将其用作页脚?
更愿意将其作为页脚分开,而不是仅将其作为单元格添加到UITableView
的末尾。
任何帮助表示感谢。
答案 0 :(得分:0)
当没有行
时,你可以使用这样的东西UIView* footerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 400)];
[footerView setBackgroundColor:[UIColor clearColor]];
self.tableView.tableFooterView = footerView;
[self.tableView setSeparatorStyle:(UITableViewCellSeparatorStyleNone)];
[self.tableView setContentInset:(UIEdgeInsetsMake(0, 0, -350, 0))];
答案 1 :(得分:0)
好的第一件事就是,如你所说" UITableView有时是空的"。因此,如果您的表为空,并在其中添加页脚视图。如下所示
-(UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
{
UIView* myFooterView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.frame.size.width, 50)];
[myFooterView setBackgroundColor:[UIColor blueColor]];
return myFooterView;
}
您的页脚视图将显示在tableview的顶部,因为tableview中没有行。如下图所示。红色是TableView颜色,蓝色是页脚视图颜色。
当你的桌子不是空的时,页脚视图就像
所以我建议你在表视图下面添加额外的视图,并在该视图中显示内容。希望这能清除你的疑虑。
答案 2 :(得分:0)
您只需要调用以heightForFooterInSection和viewForFooterInSection作为参数的表视图函数。在第一个中,返回所需的页脚高度,在第二个中,返回要显示为页脚视图的视图。例如:
import UIKit
class ViewController: UIViewController {
@IBOutlet var tableView: UITableView!
var numberOfCells = 0
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
tableView.register(UINib(nibName: "ExampleCellTableViewCell", bundle: nil), forCellReuseIdentifier: "ExampleCellTableViewCell")
}
}
extension ViewController: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return numberOfCells
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
guard let cell = self.tableView.dequeueReusableCell(withIdentifier: "ExampleCellTableViewCell") as? ExampleCellTableViewCell else { return UITableViewCell() }
return cell
}
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
return 80.0
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
return FooterView.instanceFromNib()
}
}
您可以在此处查看完整的示例项目: https://github.com/erichflock/TableViewWithFooter
答案 3 :(得分:0)
对于任何想要具有空白/无文本(通常只是空白)的标准页脚的人,您都可以将空格“”设置为页脚文本。这样将显示页脚,并且您的页脚高度将生效。