2017년 2월 27일 월요일

[IOS][swift] UICollectionView, UICollectionViewFlowLayout의 마지막 row만 이상하게 나오는 문제

와 진짜 이건 너무 하다 싶다
UICollectionView로 FlowLayout을 세로로 해서 작업중인데,
유독 마지만 라인만 뭔가 이상하다..

이렇게 나오는데 뭐 이유도 모르겠고 미치는 줄..
검색 해보니 Apple의 버그라는데..
IOS6부터 있었나 본데, 그럼 이건 버그가 아니고 스팩 아님?
여튼 수정 하려면,

class TestLayout: UICollectionViewFlowLayout {
    override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
        let attributes = super.layoutAttributesForElements(in: rect)
        let contentSize = collectionViewContentSize
        return attributes?.filter { $0.frame.maxX <= contentSize.width && $0.frame.maxY < contentSize.height }
    }

}

이런식으로 서브클래스를 생성해서 이 클래스를 레이아웃으로 지정해 주면된다.
아래는 참고한 스택 오버 플로우 링크
http://stackoverflow.com/questions/12927027/uicollectionview-flowlayout-not-wrapping-cells-correctly-ios

댓글 없음:

댓글 쓰기