// // IfishKanKanListViewController.m // Ifish // // Created by imac on 16/11/8. // Copyright © 2016年 lianxiang. All rights reserved. // #import "IfishKanKanListViewController.h" #import "IfishKankanListModel.h" #import "LXAdScrollView.h" #import "WoDeKanKanViewController.h" #define TABBAR_H self.tabBarController.tabBar.frame.size.height #import "KanKanListTableCell.h" #import "IfishP2PLivePlayViewController.h" #import "KanKanBanner.h" #import "MineKankanEditViewController.h" #import "JHRefresh.h" #import "KanKanListDataHelper.h" #import "PushMasssageWebViewController.h" #import "IfishBannerData.h" @interface IfishKanKanListViewController () { BOOL _isRefreshing; BOOL _isLoadMore; BOOL _isPushEdit; } @property(nonatomic,copy) NSString* total; @property(nonatomic,strong) LXAdScrollView *adView; @property(nonatomic,strong) UITableView * tableView; @property (nonatomic,strong) NSMutableArray *bannerArray; @property (nonatomic,strong) NSMutableArray *bannerImgArr; @property(nonatomic,strong) NSDictionary*para; @property(nonatomic)BOOL isRefreshing; @property(nonatomic)BOOL isLoadMore; @property(nonatomic,copy) NSString *oders; @property(nonatomic) int page; @property(nonatomic,strong)NSMutableArray *dataArray; @property(nonatomic,strong) MBProgressHUD *progressHud; @end /* *老界面已废弃 */ @implementation IfishKanKanListViewController - (void)viewDidLoad { [super viewDidLoad]; _isPushEdit = NO; // Do any additional setup after loading the view. _bannerArray = [[NSMutableArray alloc] init]; _bannerImgArr= [[NSMutableArray alloc] init]; _dataArray = [[NSMutableArray alloc] init]; [self loadPageData]; [self addTitleViewWithTitle:@"爱鱼看看"]; self.rightButton = [UIButton buttonWithType:UIButtonTypeCustom]; self.rightButton.frame = CGRectMake(0, 0, 60, 44); [self.rightButton setImage:[UIImage imageNamed:@"live_navicon_look"] forState:UIControlStateNormal]; [self.rightButton setImageEdgeInsets:UIEdgeInsetsMake(0, 30, 0, 0)]; [self.rightButton addTarget:self action:@selector(popAppear) forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem *rightItem =[[UIBarButtonItem alloc] init]; rightItem.customView =self.rightButton; self.navigationItem.rightBarButtonItem = rightItem; [self creatUI]; [self creatReatRefreshView]; //[self loadBannerData]; [self loadNewBannerData]; } -(void)loadPageData{ NSInteger firstResult = 0; NSInteger pageSize = 10; NSString *startoders = @""; NSString *userId = [dataContorl dataControlGetUserIdInfo]; [AFHttpTool getLiveRoomsfirstResult:firstResult pageSize:pageSize userId:userId orders:startoders success:^(id response) { NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil]; NSDictionary *dataDic=reDic[@"data"]; NSArray*roomArr=dataDic[@"liveRoomInfo"]; if ([reDic[@"result"] isEqualToString:@"100"]) { NSString *fedbackOder=dataDic[@"orders"]; NSString *total=dataDic[@"total"]; [self.dataArray removeAllObjects]; for (NSDictionary *dic in roomArr) { IfishKankanListModel *mode=[[IfishKankanListModel alloc] init]; [KanKanListDataHelper formatKanKanLisetData:mode liveRoomInfo:dic]; [self.dataArray addObject:mode]; } self.oders = fedbackOder; self.total = total; //NSLog(@"_dataArray直播1列表%lu",(unsigned long)_dataArray.count); } [self.tableView reloadData]; } failure:^(NSError *err) { [self.view makeToast:@"NSError请求异常"]; }]; } -(void)popAppear{ [self pushMyKankan]; } -(void)pushMyKankan{ self.hidesBottomBarWhenPushed = YES; // WoDeKanKanViewController *wodeKakanVC=[[WoDeKanKanViewController alloc] init]; MineKankanEditViewController *editVC = [[MineKankanEditViewController alloc] init]; _isPushEdit = YES; [self.navigationController pushViewController:editVC animated:YES]; } #pragma mark -v4.1 前 看看banner -(void)loadBannerData{ __weak typeof (self)weskSelf=self; [AFHttpTool getLiveBannerSuccess:^(id response) { NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil]; if ([reDic[@"result"] isEqualToString:@"100"]){ NSArray*bannerArr=reDic[@"data"]; for (NSDictionary *bannerDic in bannerArr) { KanKanBanner *banner=[[KanKanBanner alloc] init]; banner.appShow = bannerDic[@"appShow"]; banner.bannerId = bannerDic[@"bannerId"]; banner.bannerImg = bannerDic[@"bannerImg"]; banner.bannerLink = bannerDic[@"bannerLink"]; banner.bannerType = bannerDic[@"bannerType"]; [_bannerImgArr addObject:banner.bannerImg]; [_bannerArray addObject:banner]; } [weskSelf setingBannerViewData]; } } failure:^(NSError *err) { NSLog(@"loadBannererr%@",err); }]; } #pragma mark -v4.1 后看看banner -(void)loadNewBannerData{ __weak typeof (self)weskSelf=self; [AFHttpTool getIfishBannerData:IfishAdTypeKankan success:^(id response) { NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil]; if ([reDic[@"result"] isEqualToString:@"100"]){ NSArray*bannerArr=reDic[@"data"]; for (NSDictionary *bannerDic in bannerArr) { IfishBannerData *banner=[[IfishBannerData alloc] initWithDict:bannerDic]; [_bannerImgArr addObject:banner.adImage]; [_bannerArray addObject:banner]; } [weskSelf setingBannerViewData]; } } failure:^(NSError *err) { }]; } -(void)creatUI{ //[self cratHUD]; _tableView=[[UITableView alloc]initWithFrame:CGRectMake(0, 0,self.view.frame.size.width, self.view.frame.size.height) style:UITableViewStyleGrouped]; _tableView.dataSource=self; _tableView.delegate=self; _tableView.separatorStyle=UITableViewCellSeparatorStyleNone; _tableView.backgroundColor= TABLE_BACKGROUD_COLOR; //_tableView.backgroundColor= [UIColor redColor]; UIView *footerView=[[UIView alloc] initWithFrame:CGRectMake(0,0, kScreenSize.width, 0.1)]; footerView.backgroundColor = [UIColor clearColor]; _tableView.tableFooterView = footerView; LXAdScrollView *adView = [[LXAdScrollView alloc]initWithFrame:CGRectMake(0,0,kScreenSize.width,kScreenSize.width*0.427)]; adView.backgroundColor = [UIColor lightGrayColor]; _adView = adView; _tableView.tableHeaderView=_adView; [self.view addSubview:_tableView]; } -(void)cratHUD{ if (self.progressHud) { self.progressHud = [[MBProgressHUD alloc] initWithView:self.view]; } [self.view addSubview:self.progressHud]; self.progressHud.mode=MBProgressHUDModeIndeterminate; self.progressHud.customView = [[UIView alloc] init]; self.progressHud.delegate = self; self.progressHud.labelText = @"加载中..."; } -(void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; if (_isPushEdit) { [_tableView reloadData]; } [self setingBannerViewData]; } -(void)viewDidAppear:(BOOL)animated{ [super viewDidAppear:animated]; } -(void)viewWillDisappear:(BOOL)animated{ [super viewWillDisappear:animated]; [self.progressHud hide:YES]; } -(void)setingBannerViewData{ // 取消导航影响 广告栏 // self.automaticallyAdjustsScrollViewInsets = NO; __weak typeof (self)weskSelf=self; if (_bannerArray.count !=0) { _adView.adList = _bannerImgArr; _adView.tapActionBlock = ^(LXAdScrollView *adScrollView) { NSInteger adIndx=adScrollView.currentPage; KanKanBanner *banner=weskSelf.bannerArray[adIndx]; [weskSelf tapBannerWith:banner]; }; }else{ _adView.adList = @[@"kankan_listbanner.jpg"]; _adView.tapActionBlock = ^(LXAdScrollView *adScrollView) { [weskSelf pushMyKankan]; }; } } #pragma mark -banner 事件 -(void)tapBannerWith:(KanKanBanner *)banner { if (banner.bannerType) { //打开网页 [self pushWebwithLink:banner.bannerLink]; }else{ [self.view makeToast:@"未知广告类型"]; } } #pragma mark 打开网页 -(void)pushWebwithLink:(NSString*)url{ _isPushEdit = NO; PushMasssageWebViewController*webVC=[[PushMasssageWebViewController alloc]init]; webVC.pushlink =url; webVC.pushtitle = @"网页"; self.hidesBottomBarWhenPushed = YES; [self.navigationController pushViewController:webVC animated:YES]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 1; } -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *identfire=@"RecommendTableCell"; KanKanListTableCell *cell=[tableView dequeueReusableCellWithIdentifier:identfire]; if (!cell) { cell=[[KanKanListTableCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identfire]; } cell.delegate = self; cell.selectionStyle=UITableViewCellSelectionStyleNone; [cell loadDta:self.dataArray]; cell.backgroundColor = TABLE_BACKGROUD_COLOR; return cell; } -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { //int sliderValue=(int)(slider.value+0.5); //内容高度 int rowNumb = 0; rowNumb = (int)(self.dataArray.count +1)/2 ; //return (((270*KWidth_Scale-3*5)/2)*rowNumb)/2 + KWidth_Scale*100; return ((270*KWidth_Scale-3*5)/2)*rowNumb + KWidth_Scale*100 + 5*rowNumb; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { } -(void)TapRecommendTableCellDelegate:(IfishKankanListModel *)listModel { self.progressHud = [[MBProgressHUD alloc] initWithView:self.view]; [self.view addSubview:self.progressHud]; self.progressHud.mode=MBProgressHUDModeCustomView; self.progressHud.customView = [[UIView alloc] init]; self.progressHud.delegate = self; self.progressHud.labelText = @"加载中..."; __weak typeof (self)weskSelf=self; [self.progressHud showAnimated:YES whileExecutingBlock:^{ [weskSelf pushShareP2pView:listModel]; } onQueue:dispatch_get_main_queue()]; } -(void)pushShareP2pView:(IfishKankanListModel *)listModel { KanHuListModel *kanHuCamera =[[KanHuListModel alloc] init]; //kanHuCamera.cameraId = @"3573889"; kanHuCamera.cameraId = listModel.cameraId; IfishP2PLivePlayViewController *shareVideoVC=[[IfishP2PLivePlayViewController alloc] init]; self.hidesBottomBarWhenPushed = YES; shareVideoVC.kanHuCamera = kanHuCamera; shareVideoVC.listRoomInfo = listModel; _isPushEdit = NO; [self.navigationController pushViewController:shareVideoVC animated:YES]; } -(void)hudWasHidden:(MBProgressHUD *)hud { } -(void)creatReatRefreshView{ __weak typeof (self)weskSelf=self; // 下拉刷新 [_tableView addRefreshHeaderViewWithAniViewClass:[JHRefreshAmazingAniView class] beginRefresh:^{ if (weskSelf.isRefreshing) { return ; } weskSelf.isRefreshing=YES; _page=0; NSInteger firstResult = 0; NSInteger pageSize = 10; [weskSelf addRefreshHeaderTaskWithFirst:firstResult pageSize:pageSize isRefresh:YES]; }]; //上拉加载更多 [_tableView addRefreshFooterViewWithAniViewClass:[JHRefreshCommonAniView class] beginRefresh:^{ if (weskSelf.isLoadMore) { return ; } weskSelf.isLoadMore=YES; NSInteger pagecount =[self.total integerValue]/10+1; if (weskSelf.page