2013-06-18 4 views
0

하나 이상의 단일보기 (UIViewController "delegate/sourcedata")에서 둘 이상의 CollectionView를 갖고 싶습니다.하나의 단일보기에서 둘 이상의 컬렉션보기

enter image description here

나는 이미 일을하고 그것을 잘 작동하지만, 나는 처음부터 다른 작품 같은 페이지에서 또 다른 하나를 가지고 싶습니다. 섹션이 필요하지 않습니다. 가능한 경우 한 페이지에 두 개의 다른 CollectionView가 필요합니다. 내가 어떻게 할 수 있니?

+2

나는 당신의 대답은 여기에 생각 : [이 링크를 따라 (http://stackoverflow.com/questions/12850396/multiple-uicollectionview-in-one-controller) – Ponting

답변

2

이렇게하는 것을 막을 수있는 방법은 없습니다. 별도로 생성하고 대리자 내에서 원하는대로 각각을 처리하는 데 필요한 코드를 제공하면됩니다. 각 대리자 메서드에는 각 호출에서 컬렉션 뷰가 전달되므로 컬렉션 뷰 중 두 개가 활성 상태에 따라 다른 코드를 작성하는 것은 큰 문제는 아닙니다. 예를 들어

,

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section 

첫 번째 인수는 호출을 특정 모음이다, 그래서 당신은 그것을 반환 할 값을 구분할 수 있습니다.

이 두 cvs를 다루는 많은 코드가 있다면 하위 클래스를 만드는 것이 합리적인지 아닌지를 고려해 볼 수도 있습니다.하지만 다른 질문입니다.

당신은 지금처럼 두 가지를 만들려고 :

UICollectionView *cv1 = [[UICollectionView alloc] initWithFrame:CGRectMake(10.0f, 100.0f, 525.0f, 500.0f) collectionViewLayout:flowLayout]; 

UICollectionView *cv2 [[UICollectionView alloc] init ... 

그런 다음, 당신이 서브 뷰 각을 추가합니다. cv1 또는 cv2가 전달되었는지 여부에 따라 대리자 메서드를 처리하십시오. 큰 문제는 아니지만 약간의 고통이 있습니다.

0

UICollectionView 양식 xib를 직접 끌어다 놓을 수 있습니다. 화면 아래로 가면 스크롤 뷰에 여러 개의 UICollectionView를 추가해야합니다.

관련 문제