我UITableview
的自定义单元格为UIImageViews
。在UITableview
我使用didSelectRowAtIndexPath
方法增加单元格的高度。另外,我正在添加增加细胞高度并恢复到正常高度的方法。
当我点击单元格时,高度正在增加,当我再次点击单元格时(为了使tableviewcell
返回到默认高度),在转换时tableviewcell
上的图像保持如下所示并返回默认高度..(我不知道在转换过程中图像是如何显示的)
-(void) zoomOutProperties
{
fruitImage.frame=CGRectMake(0.0, 46.0, 320.0, 83.5);
backgroundCellImage.frame=CGRectMake(0.0, 0.0, 320.0,129.5);
customCellView.frame=CGRectMake(0.0, 0.0, 320.0, 129.5); // UIView
}
答案 0 :(得分:0)
请注意::
[UIImage imageNamed:@""]
缓存图片。而是使用:[UIImage imageWithContentsOfFile:@""]
要使图像等于UIImageView大小,您应该使用:
cell.imageView.contentMode = UIViewContentModeScaleAspectFill;
答案 1 :(得分:0)
你的帧数不会很好。例如,在zoomInProperties中,你将fruitImage设置为73.0的origin.y,但它的高度是82.5(小数像素?),所以它将结束于155.5,低于customCellView的底部135.6。如果外部单元格UIView未设置为剪辑,则图像将部分绘制到下一个单元格中。
此外,通过在设置外部customCellView之前设置内部框架,如果应用了autoResizeMask,则可以对大小进行2次更改。