// // SeceneLibraryView.m // Lighting // // Created by mac on 16/5/11. // Copyright © 2016年 上海勾芒科技有限公司. All rights reserved. // #import "SeceneLibraryView.h" @interface SeceneLibraryView () @end @implementation SeceneLibraryView - (void)viewDidLoad { [self initdata]; [self initView]; } //- (instancetype)initWithFrame:(CGRect)frame //{ // if (self = [super initWithFrame:frame]) { // [self initdata]; // [self initView]; // } // return self; //} //#pragma mark -获取场景筛选数据 //- (void)getdatasAction //{ // // [[NetworkRequestClassManager Manager] NetworkRequestWithURL:[NSString stringWithFormat:@"%@%@",ServerAddress,@"/scene/getSceneFilter"] WithRequestType:1 WithParameter:nil WithReturnValueBlock:^(id returnValue) { // // if ([returnValue[@"code"] isEqualToNumber:@0]) { // // self.filter = [[SceneFilter alloc]initWithDictionary:returnValue[@"data"] error:nil]; // // } // else // { // [self ErrorMBProgressView:returnValue[@"message"]]; // } // // } WithErrorCodeBlock:^(id errorCodeValue) { // // } WithFailureBlock:^(id error) { // // }]; //} // // //#pragma mark -获取场景列表数据 //- (void)getSceneLibrarydatas:(SceneCondition *)condition //{ // [self CreateMBProgressHUDLoding]; // [[NetworkRequestClassManager Manager] NetworkRequestWithURL:[NSString stringWithFormat:@"%@%@",ServerAddress,@"/scene/query"] WithRequestType:0 WithParameter:condition WithReturnValueBlock:^(id returnValue) { // // // [self RemoveMBProgressHUDLoding]; // if ([returnValue[@"code"] isEqualToNumber:@0]) { // // self.response = [[SceneResponse alloc]initWithDictionary:returnValue[@"data"] error:nil]; // [self.seceneLibararyCollectionView reloadData]; // } // else // { // [self ErrorMBProgressView:returnValue[@"message"]]; // } // // } WithErrorCodeBlock:^(id errorCodeValue) { // // } WithFailureBlock:^(id error) { // // [self RemoveMBProgressHUDLoding]; // }]; //} -(void)initdata { self.arrayData=[[NSMutableArray alloc]init]; self.array1=[[NSMutableArray alloc]initWithObjects:@"玄关",@"客厅",@"餐厅",@"主卧室",@"次卧室", @"书房",@"儿童房",@"过厅",@"过道",@"厨房",@"卫生间",@"休闲空间",nil]; self.array2=[[NSMutableArray alloc]initWithObjects:@"现代简约",@"欧式古典",@"新古典",@"中式",@"新中式", @"混搭",@"小美式风格",@"古典美式风格",@"地中海",@"东南亚",@"日式",@"法式",nil]; self.array3=[[NSMutableArray alloc]initWithObjects:@"田园",@"宫廷",@"乡村",@"日式风格",@"欧式风格", @"混搭风格",@"现代简约",nil]; self.arrayData=self.array1; } -(void)initView { // 空间 self.kongJianBtn=[UIButton buttonWithType:UIButtonTypeCustom]; self.kongJianBtn.frame=CGRectMake(ScreenWidth-250, 52, 100, 46) ; self.kongJianBtn.backgroundColor=[UIColor whiteColor]; [self.kongJianBtn setTitle:@"空间 " forState:UIControlStateNormal]; [self.kongJianBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; self.kongJianBtn.contentEdgeInsets = UIEdgeInsetsMake(0, 60, 0, 0); [self.kongJianBtn addTarget:self action:@selector(selectedType:) forControlEvents:UIControlEventTouchUpInside]; self.kongJianBtn.tag=101; self.kongJianBtn.layer.masksToBounds = YES; self.kongJianBtn.layer.cornerRadius = 15; [self.view addSubview:self.kongJianBtn]; // 风格 self.fengGeBtn=[UIButton buttonWithType:UIButtonTypeCustom]; self.fengGeBtn.frame=CGRectMake(ScreenWidth-250, 102, 100, 46) ; self.fengGeBtn.backgroundColor=[UIColor whiteColor]; [self.fengGeBtn setTitle:@"风格 " forState:UIControlStateNormal]; [self.fengGeBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; self.fengGeBtn.contentEdgeInsets = UIEdgeInsetsMake(0, 60, 0, 0); [self.fengGeBtn addTarget:self action:@selector(selectedType:) forControlEvents:UIControlEventTouchUpInside]; self.fengGeBtn.tag=102; self.fengGeBtn.layer.masksToBounds = YES; self.fengGeBtn.layer.cornerRadius = 15; [self.view addSubview:self.fengGeBtn]; //类型 self.leiXingBtn=[UIButton buttonWithType:UIButtonTypeCustom]; self.leiXingBtn.frame=CGRectMake(ScreenWidth-250, 152, 100, 46) ; self.leiXingBtn.backgroundColor=[UIColor whiteColor]; [self.leiXingBtn setTitle:@"类型 " forState:UIControlStateNormal]; [self.leiXingBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; self.leiXingBtn.contentEdgeInsets = UIEdgeInsetsMake(0, 60, 0, 0); [self.leiXingBtn addTarget:self action:@selector(selectedType:) forControlEvents:UIControlEventTouchUpInside]; self.leiXingBtn.tag=103; self.leiXingBtn.layer.masksToBounds = YES; self.leiXingBtn.layer.cornerRadius = 15; [self.view addSubview:self.leiXingBtn]; self.subView=[[UIView alloc]initWithFrame:CGRectMake(100, 50, ScreenWidth-300, ScreenHeight-200)]; self.subView.backgroundColor=[UIColor whiteColor]; [self.view addSubview:self.subView]; //点击手势 UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(DismissScreenView:)]; tap.delegate = self; tap.cancelsTouchesInView = NO; [[UIApplication sharedApplication].keyWindow addGestureRecognizer:tap]; [self initSubViews]; } -(void)initSubViews { self.headerView=[[UIView alloc]initWithFrame:CGRectMake(0, 0, self.subView.frame.size.width-100, 50)]; self.headerView.backgroundColor=[UIColor grayColor]; [self.subView addSubview:self.headerView]; UIButton *btn=[UIButton buttonWithType:UIButtonTypeCustom]; btn.frame=CGRectMake(10, 10, 30, 30); [btn setBackgroundImage:[UIImage imageNamed:@"changjingtubiao"] forState:UIControlStateNormal]; [self.headerView addSubview:btn]; UILabel *lable=[[UILabel alloc]initWithFrame:CGRectMake(45, 10, 100, 30)]; lable.text=@"选择场景"; [self.headerView addSubview:lable]; self.seceneTableView=[[UITableView alloc]initWithFrame:CGRectMake( self.headerView.frame.size.width, 0, 100, self.subView.frame.size.height)]; self.seceneTableView.delegate=self; self.seceneTableView.dataSource=self; [self.subView addSubview:self.seceneTableView]; //确定是水平滚动,还是垂直滚动 UICollectionViewFlowLayout *flowLayout=[[UICollectionViewFlowLayout alloc] init]; [flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical]; self.collectionView=[[UICollectionView alloc] initWithFrame:CGRectMake( 0, 50, self.headerView.frame.size.width, self.subView.frame.size.height-50) collectionViewLayout:flowLayout]; self.collectionView.dataSource=self; self.collectionView.delegate=self; [self.collectionView setBackgroundColor:[UIColor clearColor]]; //注册Cell,必须要有 [self.collectionView registerClass:[SeceneCollectionPictureCell class] forCellWithReuseIdentifier:@"UICollectionViewCell"]; [self.subView addSubview:self.collectionView]; } -(void)selectedType:(UIButton *)sender { switch (sender.tag) { case 101: // 空间 self.arrayData=self.array1; break; case 102: // 风格 self.arrayData=self.array2; break; case 103: // 类型 self.arrayData=self.array3; break; default: break; } [self.seceneTableView reloadData]; } #pragma mark -- UICollectionViewDataSource //定义展示的Section的个数 -(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView { return 10; } //定义展示的UICollectionViewCell的个数 -(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section { return 3; } //每个UICollectionView展示的内容 -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { static NSString * CellIdentifier = @"UICollectionViewCell"; SeceneCollectionPictureCell * cell = (SeceneCollectionPictureCell*)[collectionView dequeueReusableCellWithReuseIdentifier:CellIdentifier forIndexPath:indexPath]; return cell; } #pragma mark --UICollectionViewDelegateFlowLayout //定义每个Item 的大小 - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath { return CGSizeMake(190, 130); } //定义每个UICollectionView 的边距 -(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section { return UIEdgeInsetsMake(10, 10, 0, 20); } //定义每个UICollectionView 的纵向间距 -(CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section{ return 2; } #pragma mark --UICollectionViewDelegate //UICollectionView被选中时调用的方法 -(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath { SeceneCollectionPictureCell * cell = (SeceneCollectionPictureCell *)[collectionView cellForItemAtIndexPath:indexPath]; if ([self.delegate respondsToSelector:@selector(addSeceneImage:)]) { [self.delegate addSeceneImage:cell.imageView.image]; } } //返回这个UICollectionView是否可以被选择 -(BOOL)collectionView:(UICollectionView *)collectionView shouldSelectItemAtIndexPath:(NSIndexPath *)indexPath { return YES; } #pragma mark - 协议方法 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return self.arrayData.count; } - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { return 50; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *cellID = @"ChooseTansferCell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID]; if (cell == nil) { cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID]; // cell.selectionStyle = UITableViewCellSelectionStyleNone; } cell.textLabel.text=[self.arrayData objectAtIndex:indexPath.row]; return cell; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { } -(void)DismissScreenView:(UITapGestureRecognizer*)sender{ CGPoint point = [sender locationInView:self.view]; if (point.x<100 || point.x >ScreenWidth-100||point.y<50||point.y>ScreenHeight-150) { if (self) { [self.view removeFromSuperview]; } } } /* // Only override drawRect: if you perform custom drawing. // An empty implementation adversely affects performance during animation. - (void)drawRect:(CGRect)rect { // Drawing code } */ @end