UITableView
- (instancetype)initWithFrame:(CGRect)frame style:(UITableViewStyle)style;
纯代码创建UITableview指定构造方法
style:样式
UITableViewStylePlain
组与组之间没有间隔 组头悬停
UITableViewStyleGrouped
组与组之间有间隔
- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder;
xib storyBoard创建指定构造方法
- (__kindof UITableViewCell *)dequeueReusableCellWithIdentifier:(NSString *)identifier forIndexPath:(NSIndexPath *)indexPath;
生成UITableViewCell
identifier:可重用标识
- (void)registerClass:(nullable Class)cellClass forCellReuseIdentifier:(NSString *)identifier NS_AVAILABLE_IOS(6_0);
根据 xib 注册可重用标识
- (void)registerNib:(nullable UINib *)nib forCellReuseIdentifier:(NSString *)identifier NS_AVAILABLE_IOS(5_0);
根据 类 注册可重用标识
@property (nonatomic, strong, nullable) UIView *tableHeaderView;
设置表头,只有height有效
@property (nonatomic, strong, nullable) UIView *tableFooterView;
设置表尾,height 和 x 有效
@property (nonatomic) CGFloat rowHeight;
设置行高
UITableViewAutomaticDimension:自动计算行高
@property (nonatomic) CGFloat estimatedRowHeight;
预估行高
@property (nonatomic) UITableViewCellSeparatorStyle separatorStyle;
分割线样式
UITabelViewDataSource
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;
返回有多少组
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
返回每组有多少行
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
每行显示单元格
- (nullable NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section;
每组头部显示标题
- (nullable NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section;
每组尾部显示标题
- (nullable NSArray<NSString *> *)sectionIndexTitlesForTableView:(UITableView *)tableView;
返回组索引
UITableviewCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(nullable NSString *)reuseIdentifier;
指定构造方法