UICollectionViewCell 내부에있을 때 UIScrollView의 이상한 동작이 발생했습니다. 내 프로젝트에는 collectionView가 있고 각 셀에는 하나 이상의 이미지가 포함 된 UIScrollView가 있습니다. 물론UICollectionViewCell 및 UIScrollView
- (UICollectionViewCell *)collectionView:(UICollectionView *)cv cellForItemAtIndexPath:(NSIndexPath *)indexPath {
CustomCollectionCell * cell = [cv dequeueReusableCellWithReuseIdentifier:@"CustomCell" forIndexPath:indexPath];
UIImageView * imageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 20, 150, 150)];
imageView.image = [UIImage imageNamed:@"someImage.png"];
[cell.scrollView addSubview:imageView];
return cell;
}
내 프로젝트에서이 같은 이미지이지만 데이터베이스에서 공급되는 다른 사람이 아니에요 : 여기이 질문의 목적을 위해 일부 샘플 코드입니다.
첫 번째 수집 셀은 아무 문제없이 추가됩니다. 두 번째 셀을 추가 할 때 scrollView 자체를 복제하고 맨 위에 다른 인스턴스를 배치 할 것 같습니다. 나는 이상한 소리로 들리 겠지만 당신은 아래 이미지에서 모양을 볼 수 있습니다 왼쪽에있는 ScrollView에 이미지가 어두워 얼마나
공지 사항, 나는있는 ScrollView 중복 얻을 그것 때문에 가정합니다.
그래서 셀이 잘못된 방법으로 재사용되고 있다고 생각합니다.
도움 주셔서 감사합니다.
좋아, 문제의 고정 부분을, 그렇지 않습니다 중복,하지만 지금은 또 다른 이상한 문제를 발견. 하나의 셀 'scrollViews'에서 스 와이프하여 콘텐츠 오프셋을 변경하면 콘텐츠 오프셋이 다음 셀로 전달되고 이전 셀은 새로운 콘텐츠 오프셋 (예 : x = 0, y = 0)을 가져올 수 있습니다. –
정말이 동작에 대한 이유를 이해하지 못하기 때문에 설명하기가 약간 어렵습니다. 미안합니다 :) –
제가 알고있는 것처럼, 전체 collectionView는 새로운 셀이 추가 될 때마다 업데이트됩니다. 셀에 scrollView가 추가되었을 때 매우 이상한 결과가 발생합니다. 나는 새 셀만 수정되었다고 생각했지만 모든 셀이 재사용되는 것을 볼 수있다. –