2016-09-16 3 views
-1

사용자 지정 흐름 레이아웃이 있습니다. 내 세포가 있어야하는 곳을 안다. 현재 각 셀에 대해 특정 프레임을 만듭니다. 그러나, 나는 다른 크기의 아이폰에 대해 걱정하고 있으므로 제약을 만드는 것을 탐구하고 싶다. 이 기능은 prepareForLayout() 함수에서 수행되어야한다는 것을 알고 있습니다.사용자 지정 UICollectionView 레이아웃 및 제약

override func prepareLayout() { 
    for item in 0 ..< collectionView!.numberOfItemsInSection(0){ 
     let indexPath = NSIndexPath(forItem: item, inSection: 0) 
     let attributes = UICollectionViewLayoutAttributes(forCellWithIndexPath: indexPath) 
     cache.append(attributes) 
    } 
    //This is where I want to do work for creating constraints for my cells 
} 

나는 당신의 자신의 주문 흐름 레이아웃을 만들 때 질문은 당신이 세포 사이의 제약 조건을 만들 수 있습니다 추측

답변

0

사용자 정의 흐름 레이아웃을 만들 때입니다 당신이 세포 사이의 제약 조건을 만들 수 있습니다 질문

아니요. 제약 조건 및 컬렉션보기 레이아웃은 서로 다릅니다. 콜렉션 뷰 레이아웃은 프레임 단위로 항목을 배치합니다.

그러나 컬렉션보기 크기가 (self.collectionView!.bounds.size) 인 것을 알고 있으므로 항목 프레임에이를 고려할 수 있습니다. 그리고 그들은 그렇게해야합니다! 결국, 그것은 정상적인 흐름 레이아웃이 행을 구분할 때 작동하여 오른쪽에서 왼쪽으로 맞출 수있는 방식입니다. 그것은 약간의 기본 산술을하는 것입니다.

관련 문제