首页 > 代码库 > 源码-0203-UITableViewController
源码-0203-UITableViewController
//// XMGTestViewController.m// 04-UITableViewController#import "XMGTestViewController.h"@interface XMGTestViewController ()@end@implementation XMGTestViewController- (void)viewDidLoad { [super viewDidLoad]; NSLog(@"%p %p", self.view, self.tableView);}#pragma mark - Table view data source- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 10;}- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ if (indexPath.row % 2 == 0) { return [self cell:tableView indexPath:indexPath]; } else { return [self cell2:tableView indexPath:indexPath]; }}#pragma mark - 创建、设置cell- (UITableViewCell *)cell:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath{ // 0.重用标识 // 被static修饰的局部变量:只会初始化一次,在整个程序运行过程中,只有一份内存 static NSString *ID = @"cell"; // 1.先根据cell的标识去缓存池中查找可循环利用的cell UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID]; // 2.覆盖数据 cell.textLabel.text = [NSString stringWithFormat:@"cell - %zd", indexPath.row]; return cell;}- (UITableViewCell *)cell2:(UITableView *)tableView indexPath:(NSIndexPath *)indexPath{ // 0.重用标识 // 被static修饰的局部变量:只会初始化一次,在整个程序运行过程中,只有一份内存 static NSString *ID = @"cell2"; // 1.先根据cell的标识去缓存池中查找可循环利用的cell UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID]; // 2.覆盖数据 cell.textLabel.text = [NSString stringWithFormat:@"cell2 - %zd", indexPath.row]; return cell;}#pragma mark - 代理方法- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ NSLog(@"didSelectRowAtIndexPath");}@end
//// XMGTestViewController.h// 04-UITableViewController#import <UIKit/UIKit.h>@interface XMGTestViewController : UITableViewController@end
常见设置
//// XMGTableViewController.m// 05-常见设置#import "XMGTableViewController.h"@interface XMGTableViewController ()@end@implementation XMGTableViewController- (void)viewDidLoad { [super viewDidLoad]; // 分割线颜色// self.tableView.separatorColor = [UIColor redColor]; // 隐藏分割线 self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;}- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}#pragma mark - Table view data source- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 80;}- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *ID = @"cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID]; cell.textLabel.text = @"5345345"; cell.imageView.image = [UIImage imageNamed:@"173890255948"];// // 取消选中的样式// cell.selectionStyle = UITableViewCellSelectionStyleNone; // 设置选中的背景色 UIView *selectedBackgroundView = [[UIView alloc] init]; selectedBackgroundView.backgroundColor = [UIColor redColor]; cell.selectedBackgroundView = selectedBackgroundView; // 设置默认的背景色 1 cell.backgroundColor = [UIColor blueColor]; // 设置默认的背景色 2 UIView *backgroundView = [[UIView alloc] init]; backgroundView.backgroundColor = [UIColor greenColor]; cell.backgroundView = backgroundView; // 设置指示器 cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;// cell.accessoryView = [[UISwitch alloc] init]; return cell;}#pragma mark - 代理方法- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ NSLog(@"didSelectRowAtIndexPath----");}@end
源码-0203-UITableViewController
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。