2017-11-24 6 views
0

내 UICollectionView의 배경 이미지는 항상 폭과 높이 측면에서 UICollectionView보다 작게 표시됩니다.UICollectionView에 적절한 채우기를 추가하는 방법은 무엇입니까?

당신이 그림에서 보듯이

The content is outside the UICollectionView

, 이것은 배경 이미지의 외부 갈 수있는 컨텐츠를 야기 다음은 사진 (배경 흰색 색상이 전체 UICollectionView의 크기)입니다. 내가 줄일 수있는 방법

collection view size inspector

:이 CollectionView의 크기 관리자가

enter image description here

입니다 : 바로 스크롤 할 때와,이 (내가 CollectionView의 배경색을 삭제) 발생 CollectionView 내부의 셀 컨테이너의 크기?

또는이 문제를 해결하기위한 적절한 방법은 무엇입니까?

답변

1

봐. 크기를 더 큰 X와 작은 너비로 지정하십시오. 더 좋게는 autolayout을 사용하여 수퍼 뷰를 기준으로 컬렉션보기의 크기를 조정하십시오.

이미지의 경우 컬렉션보기의 배경 이미지로 사용하지 마십시오. 컬렉션보기 뒤에있는 이미지로 만드십시오.

0

질문을 이해하지 못했지만 크기 속성에서 CollectionViewCell의 크기를 변경할 수 있습니다. 아래 섹션에서 스크린 샷보기 섹션에서

enter image description here

+0

예를 들어, 두 번째 사진을 확인하십시오. 이미지가 배경 이미지 밖에 있고, 어떻게 알고 있다면이 문제를 해결하고 싶습니다. 지금은 분명하다. –

+0

스토리 보드의 스크린 샷, 모든 것을 열어 놓은 레이어 (질문 등)로 질문을 업데이트 해 주실 수 있습니까? –

+0

방금 ​​질문을 업데이트했습니다. –

1

문제를 해결하기 위해 3 가지 방법이 있습니다 : 스토리 보드 또는 .xib에

  1. : 분할 이미지 및 컬렉션보기 두 개의 서로 다른 UI 요소로는. CollectionView 제약 조건을 이미지 뷰 내부에 두십시오. 콜렉션 뷰의 선행, 위, 아래 및 아래 제약 조건을 이미지 뷰의 동일한 제약 조건에 맞 춥니 다 (10의 오프셋 또는 선행 및 후행의 오프셋). 당신의 섹션의 왼쪽과 오른쪽 가장자리가 조금 더 깊게 채우도록,

public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets { }

UIEdgeInsets(top: 0, left: 15, bottom: 0, right: 15)를 반환 : 코드에서

  • : 당신이 UICollectionViewFlowLayout를 사용하는 경우, 당신은 방법을 UICollectionViewDelegateFlowLayout 사용할 수 있습니다 배경 이미지로.

    1. 코드에서 : 컬렉션보기의 전체 내용을 배경 이미지로 더 깊게 이동하려면 collectionView.contentInset = UIEdgeInsets(top: 0, left: 15, bottom: 0, right: 15)을 사용하십시오.