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];
}
cellForRowAtIndexPath 设置图片的更多相关文章
- Android设置图片内存溢出(OOM)问题——Android开发进阶之路6
ImageView设置图片必备常识技术: Android设备会给每个应用分配16M的内存空间,如果你设置的图片的比较大且同一个页面有多个时,经常会报OOM错误导致程序奔溃.所以在这种情况下我们必须要对 ...
- (转) JAVA中如何设置图片(图标)自适应Jlable等组件的大小
一.问题: 一个程序,组件上设置某个图片作为图标,因为的label(应该说是组件)已经设定了固定大小, 所以再打开一些大图片时,超过组件大小的部分没显示出来,而小图片又没填充完整个组件 二.解决这个问 ...
- Android drawableleft drawableTop 设置图片的大小
例子: Drawable drawable=getResources().getDrawable(R.drawable.xx); //获取图片 drawable.setBounds(left, top ...
- ios UIButton设置单选效果,以及同时设置图片和标题
一,设置单选效果 - (void)selectedBtnPress:(UIButton*)sender { //首先把原来按钮的选中效果消除 for (int i=0;i<num;i++) {/ ...
- 给tabBar设置图片和字体颜色的几种方法
现在很多应用都使用到了tabBar,我们往往在给tabBar设置图片和字体的时候,当选中状态下,往往字体的颜色和图片的颜色不匹配,有时候就显得无从下手,我也常常忘了,所有写这个博客的目的,相当于给自己 ...
- 在word里插入图片,并设置图片的格式
由于公司业务需要,需要在生成的word里插入图片(公司印章),仔细想了下,还是在word模板里添加一个书签,然后再该书签的位置插入图片,并设置图片的格式方便些: 代码如下: using System; ...
- CSS设置图片垂直居中的方法
如果是应用了表格,那么设置单元格为align="center"就可以使其中的一切内容居中.如果没有应用表格要想设置图片居中就有点困难了.困难来自不按"常规出牌" ...
- 将“Cocos2dx-截屏并设置图片尺寸 ”中cocos2d-x代码转换为2.2的代码
Cocos2dx-截屏并设置图片尺寸: http://www.cocos2dev.com/?p=522 2.2 代码如下: void HelloWorld::screenShoot() { CCSiz ...
- Android:ScaleType设置图片
设置例子:ImageViewId.setScaleType(ScaleType.CENTER); ScaleType:设置图片显示方式 效果预览:
随机推荐
- 解决Cookie乱码
在Asp.net的HttpCookie中写入汉字,读取值为什么全是乱码?其实这是因 为文字编码而造成的,汉字是两个编码,所以才会搞出这么个乱码出来!其实解决的方法很简单:只要在写入Cookie时,先将 ...
- CSS外边距合并(塌陷/margin越界)
原文 简书原文:https://www.jianshu.com/p/5f18f12cd162 大纲 1.什么是外边距合并?(折叠外边距) 2.外边距带来的影响 3.折叠的结果 4.产生折叠的原因 5. ...
- python3 购物车小程序,余额写入文件保存
python3 购物车小程序,余额写入文件保存 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan goods = ( ...
- HTTP详解--请求、响应、缓存
1. HTTP请求格式 做过Socket编程的人都知道,当我们设计一个通信协议时,“消息头/消息体”的分割方式是很常用的,消息头告诉对方这个消息是干什么的,消息体告诉对方怎么干.HTTP协议传输的消息 ...
- 【Codeforces Round #442 (Div. 2) D】Olya and Energy Drinks
[链接] 我是链接,点我呀:) [题意] 给一张二维点格图,其中有一些点可以走,一些不可以走,你每次可以走1..k步,问你起点到终点的最短路. [题解] 不能之前访问过那个点就不访问了.->即k ...
- Android NetworkOnMainThreadException异常
看名字就应该知道,是网络请求在MainThread中产生的异常 先来看一下官网的解释: Class Overview The exception that is thrown when an appl ...
- IOS基础:深入理解Objective-c中@class 和#import的区别
在面向对象objective-C语言中,当一个类使用到另一个类时,并且在类的头文件中需要创建被引用的指针时,可以#import方式引入,通过@class引入: 这两种的方式的区别在于: 1.运用#im ...
- spark原理介绍 分类: B8_SPARK 2015-04-28 12:33 1039人阅读 评论(0) 收藏
1.spark是一个基于内存计算的开源的集群计算系统,目的是让数据分析更加快速.因此运行spark的机器应该尽量的大内存,如96G以上. 2.spark所有操作均基于RDD,操作主要分成2大类:tra ...
- go 字符串 数字 整型 浮点 转换
import "strconv" //先导入strconv包 // string到int int, err := strconv.Atoi(string) // string到in ...
- 【例题3-6 UVA - 1584】Circular Sequence
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 不用真的把每一位都取出来. 用一个后缀的思想. 把原串复制一遍接在后面,然后把每个字符串 都当成一个长度为n的后缀就好了. 比较每个 ...