我有一个 UITableView
,每个单元格有三个 UIImageView
View ,一次在 View 上显示三个单元格(总共九个 UIImageView
View )。把它想象成一个书架。有时我可以拥有多达500本书。
我已经使用以下代码将阴影添加到了UIImageView
中:
UIImageView *itemImageView = [[UIImageView alloc] initWithFrame:CGRectMake(25, 7, 65, 75)];
itemImageView.contentMode = UIViewContentModeScaleAspectFit;
itemImageView.tag = 6;
itemImageView.layer.shadowColor = [UIColor blackColor].CGColor;
itemImageView.layer.shadowOffset = CGSizeMake(3, -1);
itemImageView.layer.shadowOpacity = 0.7;
itemImageView.layer.shadowRadius = 3.0;
itemImageView.clipsToBounds = NO;
[cell.contentView addSubview:itemImageView];
当我添加阴影代码时,如上所示,滚动性能完全被杀死并变得不稳定。每个图像都有不同的
Rect
,因此在滚动时必须为每个项目创建阴影。任何人都有关于如何在 UITableView
上为我的图像添加阴影而不会出现此问题的任何提示? 最佳答案
如果添加,您可能会看到性能改进
itemImageView.layer.shadowPath =
[UIBezierPath bezierPathWithRect:itemImageView.layer.bounds].CGPath;
但一般来说,像这样的层操作会降低表 View 中的性能。我遇到了完全相同的问题,我们只是消除了阴影效果。这不值得。