cellForRowAtIndexPath 设置图片

#import "UIImageView+MJWebCache.h"

#import "MJPhotoBrowser.h"

#import "MJPhoto.h"

 

 

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

 

{

    static NSString *CellIdentifier = @"HZWuYePhotoListCell";

    HZWuYePhotoListCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {

        cell = [[HZWuYePhotoListCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier: CellIdentifier];

    }

    cell.clipsToBounds = YES;

    

    //选中cell背景色无色

    cell.selectionStyle = UITableViewCellSelectionStyleNone;

    

    HZWuyephoto *Wuyephoto = [self.dataArray objectAtIndex:indexPath.row];

    

    NSArray *statusestemp = [HZWuyePhotoList objectArrayWithKeyValuesArray:Wuyephoto.list];

 

    

    cell.PhotoTime.numberOfLines=0;

 

    cell.PhotoTime.text=[Utils getFormateDateAndTime:Wuyephoto.create_date timeStr:Wuyephoto.create_time];

  

    

    [cell.PhptoComment setFont:[UIFont systemFontOfSize:13]];

    cell.PhptoComment.text= Wuyephoto.task_description;

    cell.PhptoComment.numberOfLines=0;

    

    

 

    //设置图片

    if (Wuyephoto.list != nil && Wuyephoto.list.count > 0) {

        cell.PhotoFatherView.frame = CGRectMake(100, 10, 100, 100);

        

        //        cell.PhotoBgimg.hidden = NO;

        

        NSArray *imgArray = @[cell.PhotoImg1,cell.PhotoImg2,cell.PhotoImg3,cell.PhotoImg4];

      

        cell.PhotoImg4.hidden = YES;

        cell.PhotoImg3.hidden = YES;

        cell.PhotoImg2.hidden = YES;

        cell.PhotoImg1.hidden = YES;

        cell.PhotoCount.hidden = YES;

        

        cell.PhotosView.hidden = NO;

        

        cell.PhotoImg1.image = nil;

        cell.PhotoImg2.image = nil;

        cell.PhotoImg3.image = nil;

        cell.PhotoImg4.image = nil;

        

        cell.PhotoTime.frame=CGRectMake(220,10, 100, 15);

        cell.PhotoMouth.frame=CGRectMake(-160,15, 30, 80);

        cell.PhptoComment.frame=CGRectMake(120, 32, 190, 68);

        

        

        if (Wuyephoto.list.count==1) {

            cell.PhotoImg1.frame= CGRectMake(0, 0,100, 100);

            cell.PhotosView.frame= CGRectMake(10, 15, 100, 100);

        }else if (Wuyephoto.list.count==2){

            cell.PhotoImg1.frame= CGRectMake(0, 0, 49, 100);

            cell.PhotoImg2.frame= CGRectMake(51, 0, 49, 100);

            

            cell.PhotosView.frame= CGRectMake(10, 15, 100, 100);

            

        }else if (Wuyephoto.list.count==3){

            cell.PhotosView.frame= CGRectMake(10, 15, 100, 100);

            

            cell.PhotoImg1.frame= CGRectMake(0, 0, 49, 49);

            cell.PhotoImg2.frame= CGRectMake(51, 0, 49, 49);

            cell.PhotoImg3.frame= CGRectMake(0, 51, 100, 49);

        }else if (Wuyephoto.list.count==4){

            cell.PhotosView.frame= CGRectMake(10, 15, 100, 100);

            

            cell.PhotoImg1.frame= CGRectMake(0, 0, 49, 49);

            cell.PhotoImg2.frame= CGRectMake(51, 0, 49, 49);

            cell.PhotoImg3.frame= CGRectMake(0, 51, 49, 49);

            cell.PhotoImg4.frame= CGRectMake(51, 51, 49, 49);

            

        }else if (Wuyephoto.list.count>4){

            

            cell.PhotosView.frame= CGRectMake(10, 15,100, 100);

            

            cell.PhotoImg1.frame= CGRectMake(0, 0, 49, 49);

            cell.PhotoImg2.frame= CGRectMake(51, 0, 49, 49);

            cell.PhotoImg3.frame= CGRectMake(0, 51, 49, 49);

            cell.PhotoImg4.frame= CGRectMake(51, 51, 49, 49);

            

            cell.PhotoCount.hidden = YES;

            cell.PhotoCount.frame= CGRectMake(190, 85, 100, 15);

            [cell.PhotoCount setFont:[UIFont systemFontOfSize:11]];

            //                cell.PhotoCount.text=(NSString *)Wuyephoto.list.count;

        }

        

        

        

        for (int i = 0; i < (Wuyephoto.list.count>4?4:Wuyephoto.list.count); ++i) {

            HZWuyephoto *testP=statusestemp[i];

            

            //            for (int i=0; i<self.statuses2.count; i++) {

            //                HZWuyephoto *testP=self.statuses2[i];

            //

            //                DLog(@"====%@=====end",testP.file_path);

            //

            //            }

            

            NSString *url = testP.file_path;

            UIImageView *tempImgView = [imgArray objectAtIndex:i];

            tempImgView.hidden = NO;

            [tempImgView sd_setImageWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@%@",AppInfoService,url]] placeholderImage:[UIImage imageNamed:@"acct_my_header_icon.jpg"]];

             

            tempImgView.userInteractionEnabled = YES;

            tempImgView.contentMode = UIViewContentModeScaleAspectFill;

            tempImgView.clipsToBounds = YES;

            

            

            

            NSString *cellindex = [NSString stringWithFormat:@"%ld",(long)indexPath.row];

            NSString *imageInt = [NSString stringWithFormat:@"%d",i];

            NSString *ImgViewstringInt = [NSString stringWithFormat:@"%@%@",cellindex,imageInt];

            int indexint = [ImgViewstringInt intValue];

            tempImgView.tag=indexint;

            

            

            UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(showImage:)];

            [tempImgView addGestureRecognizer:tap];

        }

        

        //            [cell.contentView addSubview:cell.PhotoFatherView];

        //            [cell.PhotoFatherView addSubview:cell.PhotoImg1];

        //            [cell.PhotoFatherView addSubview:cell.PhotoImg2];

        //            [cell.PhotoFatherView addSubview:cell.PhotoImg3];

        //            [cell.PhotoFatherView addSubview:cell.PhotoImg4];

        

        

    }else{

        

        cell.PhotoTime.frame=CGRectMake(220,10, 100, 15);

        cell.PhotoMouth.frame=CGRectMake(-160,15, 30, 80);

        cell.PhptoComment.frame=CGRectMake(120, 32, 190, 68);

        cell.PhotoImg1.frame= CGRectMake(0, 0,100, 100);

        cell.PhotosView.frame= CGRectMake(10, 15, 100, 100);

        cell.PhotoCount.hidden = YES;

        cell.PhotoImg1.image=[UIImage imageNamed:@"acct_my_header_icon.jpg"];

    }

    

    // 3.设置字体

    //    self.text_think.font = [UIFont systemFontOfSize:15];

    //设置地址图标

    //    cell.PhotoAddressImg = Wuyephoto.task_description;

    //设置地址名称(暂时没有)

    

    

    //投诉的类别和分类等对应参数值如下

    /*

     static {

     TASK_TYPE.put("1", "投诉");

     TASK_TYPE.put("2", "报修");

     TASK_TYPE.put("3", "表扬");

     TASK_TYPE.put("4", "意见建议");

     }

     

     */

    

    /*

     static {

     COMPLAIN_CSP_TYPE.put("1", "保绿");

     COMPLAIN_CSP_TYPE.put("2", "保安");

     COMPLAIN_CSP_TYPE.put("3", "保洁");

     COMPLAIN_CSP_TYPE.put("4", "保修");

     COMPLAIN_CSP_TYPE.put("5", "服务态度");

     }

     */

    

    

    

    //设置地址

    cell.PhotoAddressLabel.font = [UIFont systemFontOfSize:10];

    cell.PhotoAddressLabel.frame=CGRectMake(120, 100, 110, 20);

    

    

    //设置评论

    cell.PhotoAttitudeLab.frame=CGRectMake(120, 10, 40, 15);

    cell.PhotoAttitudeLab2.frame=CGRectMake(160, 10, 50, 15);

    

    

    cell.PhotoAttitudeLab.font = [UIFont systemFontOfSize:12];

    cell.PhotoAttitudeLab2.font = [UIFont systemFontOfSize:12];

    

//    cell.PhotoAttitudeLab.hidden=YES;

//    cell.PhotoAttitudeLab2.hidden=YES;

    

    //    设置圆角(边长的一半)

    cell.PhotoCommentBtn.layer.cornerRadius=5;

    //    从父视图中剪切超出的部分

    cell.PhotoCommentBtn.clipsToBounds=YES;

    

    

    

    if ([Wuyephoto.task_type isEqualToString:@"1"]) {

    

        [cell.PhotoCommentBtn setTitle:@"反应问题" forState:UIControlStateNormal];

        cell.PhotoAttitudeLab.text=@"";

        cell.PhotoCommentBtn.frame=CGRectMake(120, 10, 70, 20);

        

    }else if ([Wuyephoto.task_type isEqualToString:@"3"]) {

        

        [cell.PhotoCommentBtn setTitle:@"表扬" forState:UIControlStateNormal];

        cell.PhotoAttitudeLab.text=@"";

        cell.PhotoCommentBtn.frame=CGRectMake(120, 10, 40, 20);

       

        

    }if ([Wuyephoto.task_type isEqualToString:@"4"]) {

        [cell.PhotoCommentBtn setTitle:@"意见建议" forState:UIControlStateNormal];

        cell.PhotoCommentBtn.frame=CGRectMake(120, 10, 70, 20);

        cell.PhotoAttitudeLab.text=@"";

        

    }

    

    if ([Wuyephoto.task_type isEqualToString:@"1"]) {

        

    

        if ([Wuyephoto.complaint_content isEqualToString:@"1"]) {

            cell.PhotoAttitudeLab2.text=@"";

        }else if ([Wuyephoto.complaint_content isEqualToString:@"2"]) {

            cell.PhotoAttitudeLab2.text=@"";

        }else if ([Wuyephoto.complaint_content isEqualToString:@"3"]) {

            cell.PhotoAttitudeLab2.text=@"";

        }else if ([Wuyephoto.complaint_content isEqualToString:@"4"]) {

            cell.PhotoAttitudeLab2.text=@"";

        }else if ([Wuyephoto.complaint_content isEqualToString:@"5"]) {

            cell.PhotoAttitudeLab2.text=@"";

        }

    }else{

    cell.PhotoAttitudeLab2.text=@"";

    }

    

    cell.PhotoAddressLabel.text=[NSString stringWithFormat:@"%@%@%@",Wuyephoto.task_road,Wuyephoto.task_unit,Wuyephoto.task_unit_no];

    cell.PhotoAddressLabel.hidden=YES;

 

    

    

    return cell;

}

#pragma mark- 判断文本的宽高

 

-(CGFloat)getHeightSize:(NSString *)str allowSize:(CGFloat)width font:(UIFont *)font{

    CGSize titleSize = [str sizeWithFont:font constrainedToSize:CGSizeMake(width, MAXFLOAT) lineBreakMode:NSLineBreakByWordWrapping];

   

    return titleSize.height;

}

#pragma mark - UIViewControllerTransitioningDelegate methods

 

- (void)showImage:(UIGestureRecognizer *)ges {

    

    

    

    

    NSString *indextag = [NSString stringWithFormat:@"%ld",(long)ges.view.tag];

    NSString *strDay=[indextag substringWithRange:NSMakeRange(0, indextag.length-1)];

    int intString = [strDay intValue];

    NSString *strDay2=[indextag substringWithRange:NSMakeRange(indextag.length-1, 1)];

    int imageint = [strDay2 intValue];

    

    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:intString inSection:0];

    HZWuYePhotoListCell *cell = (HZWuYePhotoListCell *)[self.tableView cellForRowAtIndexPath:indexPath];

    HZWuyephoto *theme = [self.dataArray objectAtIndex:indexPath.row];

    self.statuses2 = [HZWuyePhotoList objectArrayWithKeyValuesArray:theme.list];

    

    

    

    int count = (int)theme.list.count;

    

    // 1.封装图片数据

    NSMutableArray *photos = [NSMutableArray arrayWithCapacity:count];

    for (int i = 0; i<(count>4?4:count); i++) {

        

        HZWuyephoto *testP=self.statuses2[i];

        

        

        //        // 替换为中等尺寸图片

        NSString *url =testP.file_path;

        MJPhoto *photo = [[MJPhoto alloc] init];

        photo.url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@",AppInfoService,url]]; // 图片路径

        photo.srcImageView = cell.PhotosView.subviews[i]; // 来源于哪个UIImageView

        [photos addObject:photo];

    }

    

    // 2.显示相册

    MJPhotoBrowser *browser = [[MJPhotoBrowser alloc] init];

    browser.currentPhotoIndex = imageint; // 弹出相册时显示的第一张图片是?

    browser.photos = photos; // 设置所有的图片

    [browser show];

    

    

    

    

    //    self.sImgView = (UIImageView *)[ges view];

    //    self.sImgView.backgroundColor=[UIColor blackColor];

    //

    //    //    NSLog(@"%f",self.sImgView.frame.size.width);

    //    TGRImageViewController *viewController = [[TGRImageViewController alloc] initWithImage:self.sImgView.image];

    //    viewController.transitioningDelegate = self;

    //

    //    [ApplicationDelegate.tabBarController presentViewController:viewController animated:YES completion:nil];

}

 

posted @ 2015-06-02 13:24  穿山甲随笔-iOS开发  阅读(328)  评论(0编辑  收藏  举报