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:设置图片显示方式 效果预览:
随机推荐
- 1.1 Introduction中 Distribution官网剖析(博主推荐)
不多说,直接上干货! 一切来源于官网 http://kafka.apache.org/documentation/ Distribution 分布式(Distribution) The partiti ...
- Flask项目之手机端租房网站的实战开发(三)
说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 接着上一篇博客继续往下写 :https://blog.csdn.net/qq_41782425/article/details/8 ...
- Python 极简教程(十一)字典 dict
字典是以大括号标识,以键值对(key:value)的形式,无序,不可重复,可变的集合类型. 字典具有非常高效的读写效率. >>> d = {} # 创建一个空字典 >>& ...
- 【CS Round #46 (Div. 1.5) C】Set Subtraction
[链接]h在这里写链接 [题意] 一开始有n个数字,然后有一个数字X,把每个数字都减去X,又生成N个新的数字. 然后把这2*N个数字混在一起. 告诉你这2*N个数字是什么.让你复原出原来的N个数字,以 ...
- Mosquito的优化——订阅树优化(八)
本文由逍遥子撰写.转发请标注原址: http://blog.csdn.net/houjixin/article/details/46413783 或 http://houjixin.blog.163. ...
- 支付宝支付返回通知时 notify_url和return_url的选择
页面跳转同步通知页面特性(return_url特性) 买家在支付成功后会看到一个支付宝交易提示成功的页面,该页面会停留几秒,然后会自动跳转回商户指定的同步通知页面(参数return_url) 该页面中 ...
- LA 3882 - And Then There Was One(约瑟夫 递归)
看题传送门 题目大意: N个数排成一圈,第一次删除m,以后每k个数删除一次,求最后一被删除的数. 如果这题用链表或者数组模拟整个过程的话,时间复杂度都将高达O(nk),而n<=10000,k&l ...
- AES 加密解密
package XX.XX.XX.test; import java.io.IOException; import java.io.UnsupportedEncodingException; impo ...
- WCF走你~异常篇(永久更新...)
下面是我个人在进行WCF开发时,遇到的问题及相关的解决方法,供大家一起学习 1. ......HTTP 响应时发生错误.这可能是由于服务终结点绑定未使用 HTTP 协议造成的. 解决:把返回的实体类添 ...
- POJ 1251 Jungle Roads (zoj 1406) MST
传送门: http://poj.org/problem?id=1251 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=406 P ...