自动轮播

首先在viewcontroller中设置tabbar,然后准备在某一个主界面书写界面

#import "twoViewController.h"
#import "firstViewController.h"
#import "secondViewController.h"
#define HCWidth self.view.frame.size.width
#define HCHeigh self.view.frame.size.height
@interface twoViewController ()<UITableViewDelegate,UITableViewDataSource,UICollectionViewDelegate , UICollectionViewDataSource>{
    NSArray *arrimG;
}
@property(nonatomic,strong)UITableView *tbv;

@end
static NSString *reuseCell = @"123";
@implementation twoViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:nil];
    
    // 默认为关闭大标题模式
    self.navigationController.navigationBar.prefersLargeTitles = YES;
    
    self.navigationItem.title = @"健康数据";
    
    
    [self.view addSubview:self.tbv];
    [self createTableViewHeader];
    
}
-(UITableView *)tbv{
    if (!_tbv) {
        _tbv = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height) style:UITableViewStylePlain];
    }
    
    _tbv.dataSource = self;
    _tbv.delegate = self;
    
    
    
    return _tbv;
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return 6;
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
    
    if (!cell) {
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"cell"];
    }
    
    
    
    _tbv.rowHeight = 50;
    
    NSArray *array = @[@"健康记录",@"身体测量",@"生殖健康",@"数据结果",@"心脏",@"主要体征"];
    
    
    NSArray *arrimg = @[@"健康记录",@"身体测量",@"生殖健康",@"数据结果",@"心脏",@"主要体征"];
    
    UIImageView *imgV = [[UIImageView alloc]initWithFrame:CGRectMake(10, 10, 30, 30)];
    
    imgV.image = [UIImage imageNamed:arrimg[indexPath.row]];
    
    [cell addSubview:imgV];
    
    UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(50, 10, 100, 30)];
    
    label.text = array[indexPath.row];
    
    [cell addSubview:label];
    cell.detailTextLabel.text = @">";
    
    
    
    return cell;
}



//分区个数 (几组)
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView{
    return 1;
}
//每个分区有几个item (小格子的个数)
-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
    
    return 4;
    
    
}
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
    //创建重用标识符
    
    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:reuseCell forIndexPath:indexPath];
    //设置格子的背景颜色
    cell.backgroundColor = [UIColor redColor];
    //初始化图片框
    UIImageView *imgV = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 180, 180)];
    //添加图片
    imgV.image = [UIImage imageNamed:arrimG[indexPath.row]];
    //添加到网格里面
    [cell addSubview:imgV];
    
    
    
    return cell;
    
}


-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
    
    if (indexPath.item == 0) {
        firstViewController *p = [firstViewController new];
        [self.navigationController pushViewController:p animated:YES];
    }else if (indexPath.item == 1){
        
        NSLog(@"正念训练");
        
    }else if (indexPath.item == 2){
        NSLog(@"营养摄入");
        
    }else{
        secondViewController *pppp = [secondViewController new];
        [self.navigationController pushViewController:pppp animated:YES];
    }
    
    
}

-(void)createTableViewHeader{
    
    
    UIView * headerView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 455)];
    
    headerView.backgroundColor = [UIColor colorWithRed:248/255.0 green:248/255.0 blue:248/255.0 alpha:1];
    
    
    UISearchBar *search = [[UISearchBar alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 50)];
    
    //search.backgroundColor = [UIColor colorWithRed:248/255.0 green:248/255.0 blue:248/255.0 alpha:1];
    
    search.barStyle = UISearchBarStyleDefault;
    
    
    
    
    search.placeholder = @"搜索";
    
    [headerView addSubview:search];
    
    
    
    
    //创建流水布局
    UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
    //格子的大小
    layout.itemSize = CGSizeMake(180, 180);
    //行间距
    layout.minimumLineSpacing = 15;
    //列间距
    layout.minimumInteritemSpacing = 15;
    //分区间距
    layout.sectionInset = UIEdgeInsetsMake(15, 15, 15, 15);
    //
    
    //网格视图 (表格 -> 需要注册,需要创建布局)
    //1.frame
    UICollectionView *clV = [[UICollectionView alloc] initWithFrame:CGRectMake(0, 50, self.view.frame.size.width, 405) collectionViewLayout:layout];
    //2.数据源和代理
    clV.delegate = self;
    clV.dataSource = self;
    
    //注册网格cell
    [clV registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:reuseCell];
    
    //给数组赋值
    arrimG = @[@"1",@"2",@"3",@"4"];
    
    //设置视图的背景颜色
    clV.backgroundColor = [UIColor whiteColor];
    
    [headerView addSubview:clV];
    
    self.tbv.tableHeaderView = headerView;
}
@end

之后创建自定义cell xib和各种跳转的控制器

#import "firstViewController.h"
#import "pTableViewCell.h"
@interface firstViewController ()<UITableViewDataSource,UITableViewDelegate>
@property(nonatomic,strong)UITableView *tbv;
@end

@implementation firstViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    self.view.backgroundColor = [UIColor redColor];
    
    // 默认为关闭大标题模式
    self.navigationController.navigationBar.prefersLargeTitles = YES;
    
    self.navigationItem.title = @"健康记录";
    
    
    
    [self.view addSubview:self.tbv];
    
}

-(UITableView *)tbv{
    if (!_tbv) {
        _tbv = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height) style:UITableViewStyleGrouped];
    }
    
    _tbv.delegate = self;
    _tbv.dataSource = self;
    
    [_tbv registerNib:[UINib nibWithNibName:@"pTableViewCell" bundle:nil] forCellReuseIdentifier:@"cell2"];
    
    return _tbv;
    
}

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return 2;
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    if (section == 0) {
        return 1;
    }else{
        return 3;
    }
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    
    
    if (indexPath.section == 0) {
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
        
        if (!cell) {
            cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"cell"];
        }
        _tbv.rowHeight = 200;
        
        UIImageView *imgV = [[UIImageView alloc]initWithFrame:CGRectMake(10, 10, self.view.frame.size.width - 20, 180)];
        
        imgV.image = [UIImage imageNamed:@"11"];
        
        [cell addSubview:imgV];
        return cell;
    }else{
        _tbv.rowHeight = 150;
        pTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"cell2"];
        return cell;
    }
    
}

-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
    if (section == 0) {
        
        return @"少做多动,适度锻炼";
    }
    else{
        return @"今天";
    }
}

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    if (indexPath.section==0) {
        return 180;
    }
    else{
        return 80;
    }
}


@end

#import "secondViewController.h"
#import "pTableViewCell.h"
@interface secondViewController ()<UITableViewDataSource,UITableViewDelegate>
@property(nonatomic , strong) UITableView *tbv;
@end

@implementation secondViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    self.view.backgroundColor = [UIColor redColor];
    
    // 默认为关闭大标题模式
    self.navigationController.navigationBar.prefersLargeTitles = YES;
    
    self.navigationItem.title = @"健康记录";
    
    
    
    [self.view addSubview:self.tbv];
    
}

-(UITableView *)tbv{
    if (!_tbv) {
        _tbv = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height) style:UITableViewStyleGrouped];
    }
    
    _tbv.delegate = self;
    _tbv.dataSource = self;
    
    [_tbv registerNib:[UINib nibWithNibName:@"pTableViewCell" bundle:nil] forCellReuseIdentifier:@"cell2"];
    
    return _tbv;
    
}

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return 2;
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    if (section == 0) {
        return 1;
    }else{
        return 3;
    }
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    
    
    if (indexPath.section == 0) {
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
        
        if (!cell) {
            cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"cell"];
        }
        _tbv.rowHeight = 200;
        
        UIImageView *imgV = [[UIImageView alloc]initWithFrame:CGRectMake(10, 10, self.view.frame.size.width - 20, 180)];
        
        imgV.image = [UIImage imageNamed:@"22"];
        
        [cell addSubview:imgV];
        return cell;
    }else{
        pTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"cell2"];
        return cell;
    }
    
}

-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
    if (section == 0) {
        return @"到点就寝,按时起床,持之以恒";
    }
    else{
        return @"更早";
    }
}

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    if (indexPath.section==0) {
        return 180;
    }
    else{
        return 80;
    }
}


@end

// 默认为关闭大标题模式
self.navigationController.navigationBar.prefersLargeTitles = YES;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值