我使用该代码创建自定义UICollectionViewCell,并在使用它时滞后。为什么?
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self)
{
self.webView = [[UIWebView alloc] initWithFrame:CGRectZero];
_webView.scalesPageToFit = YES;
_webView.allowsInlineMediaPlayback = YES;
_webView.mediaPlaybackRequiresUserAction = NO;
_webView.scrollView.scrollEnabled = NO;
_webView.scrollView.bounces = NO;
[self.contentView addSubview:self.webView];
self.imageView = [[UIImageView alloc] initWithFrame:CGRectZero];
self.imageView.clipsToBounds = YES;
[self.contentView addSubview:self.imageView];
}
return self;
如果我使用此代码,那么确定
- (CollectionCell *)collectionView:(IndexedCollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
cell.imageView = [[UIImageView alloc] initWithFrame:CGRectZero];
cell.imageView.clipsToBounds = YES;
[cell.contentView addSubview:cell.imageView];
答案 0 :(得分:1)
由于您在初始化中分配了一个webview,我猜这就是你看到滞后的原因。
UIWebView
是一个繁重的分配,因为它在一个自定义单元格中,它可能被多次调用。看看我要去哪里?
正如我在评论中所述,如果没有Time Profiler的结果,很难真正了解你的应用程序内部的内容。