1. 純代碼創建
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. self.view.backgroundColor = [UIColor grayColor]; //style:UITableViewStyleGrouped 分組 //style:UITableViewStylePlain 當組名稱滑動到頂部時,將固定在頂部位置 UITableView *tabview = [[UITableView alloc] initWithFrame:self.view.frame style:UITableViewStylePlain]; tabview.backgroundColor = [UIColor yellowColor]; tabview.dataSource = self; [self.view addSubview:tabview]; } - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ return 5; } - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{ return [NSString stringWithFormat:@"分組%zd", section]; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ return 6; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ UITableViewCell *cell = [[UITableViewCell alloc] initWithFrame:CGRectMake(0, 0, CGRectGetWidth(self.view.bounds), 50)]; cell.textLabel.text = [NSString stringWithFormat:@"hello%zd", indexPath.row]; return cell; }
2. 創建viewcontroller時,同時創建.xlb文件,再把uitabview拖拽到.xlb文件中
#import "SecondViewController.h" @interface SecondViewController () @property (weak, nonatomic) IBOutlet UITableView *tabview; @end @implementation SecondViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. self.tabview.backgroundColor = [UIColor greenColor]; }
3.自定義tabview,需創建一個。xlb文件
/ // CustomTabView.h // UITabViewTest // // Created by zzj on 2016/11/29. // Copyright © 2016年 zzj. All rights reserved. // #import@interface CustomTabView : UITableView + (instancetype) tableViewWithDataSource:(id ) dataSource; @end
#import "CustomTabView.h" @implementation CustomTabView + (instancetype)tableViewWithDataSource:(id)dataSource{ CustomTabView *customTabView = [[[NSBundle mainBundle] loadNibNamed:@"CustomTabVew" owner:self options:nil] lastObject ]; customTabView.dataSource = dataSource; return customTabView; }
#import "ThirdViewController.h" #import "CustomTabView.h" @interface ThirdViewController ()@end @implementation ThirdViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. CustomTabView * tabview = [CustomTabView tableViewWithDataSource:self]; [self.view addSubview:tabview]; }
xlb文件中只有一個 uitabview控件