我有一个使用cellForRowAtIndexPath
填充单元格的tableview。但是,当更改行时,委托方法可能会调用configureCellAtIndexPath
,以便只更改一个单元格。
当我更改单元格的照片时,configureCellAtIndexPath
不是将其放在表格行最左侧的正确位置,而是将其放在右侧,也不会正确裁剪。当用户向上或向下滚动时,图像会更正,大概是因为cellForRowAtIndexPath
正在设置事物。
我的问题是为什么configureCellatIndexPath
将照片放在错误的位置?
以下是我的代码(可能包含一些冗余,但对于cellForRowAtIndexPath
和configureCell
都是相同的):
cell.imageView.image = chosenImage;
cell.imageView.contentMode = UIViewContentModeScaleAspectFit;
CGSize itemSize = CGSizeMake(40, 40);
UIGraphicsBeginImageContextWithOptions(itemSize, NO, UIScreen.mainScreen.scale);
CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height);
[cell.imageView.image drawInRect:imageRect];
cell.imageView.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
cell.imageView.layer.masksToBounds=YES;
cell.imageView.layer.cornerRadius=20.0;
cell.imageView.frame = CGRectMake(20, 20, 500, 50);