简单赘述一下 的创建步骤
// 创建UITableView self.tableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStylePlain];
// 设置数据源和代理
self.tableView.dataSource = self;
self.tableView.delegate = self;
// 注册自定义UITableViewCell类,如果需要
//[self.tableView registerClass:[YourCustomCell class] forCellReuseIdentifier:@"CellIdentifier"]; [self.view addSubview:self.tableView];
要在iOS 11及以上版本上执行不同的代码,你可以使用如下的方式进行版本检测:
if (@available(iOS 11, *)) { // 这里放置iOS 11及以上版本的代码 self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever; } else { // 这里放置iOS 11以下版本的代码 }
重要补充,如果是plain模式下,section实际高度会多出22个单位,此时,需要添加以下代码:
if (@available(iOS 15.0, *)) {
tableView.sectionHeaderTopPadding = 0;
}
而Grouped模式不需要
两者交互上的区别在于:
Plain样式下区头和区尾是悬浮的(即拖动表的时候区头和区尾不会消失,一直显示在界面上);
Grouped样式区头和区尾是随表一起滑动的。静态的tableview需要分区时(XIB)样式只能是Grouped