zoukankan      html  css  js  c++  java
  • 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];

    }

  • 相关阅读:
    js判断浏览器类型
    如何编译JAR包
    Android + Eclipse + PhoneGap 3.4 安卓最新环境配置,部分资料整合网上资料,已成功安装.
    QQ互联简单例子,七彩花都提供
    Android + Eclipse + PhoneGap 2.9.0 安卓最新环境配置,部分资料整合网上资料,已成功安装.
    碎片化知识整理
    今天开始记录我每天的学习过程,补上昨晚的的笔记
    Appium 1.6.5安装环境配置 iOS篇
    Appium1.6.4-beta iPhone真机控件获取 app-inspector
    Appium1.6.4-beta 模拟器控件获取 App-inspector
  • 原文地址:https://www.cnblogs.com/niexiaobo/p/4546184.html
Copyright © 2011-2022 走看看