0

UICollectionViewCell에서 여러 식별자를 사용하려고합니다.

그러나 CollectionView에 대한 재사용 식별자를 하나만 설정할 수있는 것처럼 보입니다.UICollectionViewCell에서 여러 식별자 사용

[collectionView registerClass:[CollectionViewCell class] forCellWithReuseIdentifier:@"CollectionViewCell"]; 


은 정말 하나의 식별자와 함께 일하지만이 같은 다른 식별자를 사용하는 경우, 그것은 오류 메시지를 제공합니다.

CollectionViewCell *cell = (CollectionViewCell *)[collectionView dequeueReusableCellWithReuseIdentifier:@"NewID" forIndexPath:indexPath]; 

때문에, 이유 캐치되지 않는 예외 'NSInternalInconsistencyException'응용 프로그램 종료 : '뷰 가지 큐에서 제거 할 수 없습니다 : 식별자 CollectionViewCell와 UICollectionElementKindCell을 - 식별자에 대한 펜촉 또는 클래스를 등록해야합니다 또는 스토리 보드에 프로토 타입 셀 연결 '

UICollectionViewCell에서 여러 식별자를 어떻게 설정합니까?

여러 개의 맞춤형 셀을 동시에 표시하려고합니다.
각 셀에는 UIScrollView 및 UIPageControl이 있습니다.
다른 식별자를 설정할 수 없으면 인스턴스가 새 셀에 다시 사용되고 각 UIScrollView의 이동에 의해 UIPageControl이 반응하지 않습니다.

+1

다른 클래스/식별자를 등록하려고 했습니까? – nhgrif

답변

1

사용할 각 클래스와 셀에 대해 registerClass:forCellWithReuseIdentifier:으로 전화해야합니다.

다른 재사용 식별자가있는 셀을 사용하려면 해당 셀에 대해 다른 클래스를 만든 다음 해당 재사용 식별자의 컬렉션보기로 해당 클래스를 등록해야합니다.


[collectionView registerClass:[FooCell class] 
    forCellWithReuseIdentifier:@"FooIdentifier"]; 

[collectionView registerClass:[BarCell class]  
    forCellWithReuseIdentifier:@"BarIdentifier"]; 

[collectionView registerClass:[ExampleCell class] 
    forCellWithReuseIdentifier:@"ExampleCell"]; 

지금, 당신은 그 세 식별자 중 하나와 셀을 사용할 수 있습니다.

관련 문제