0

내 프로젝트의 UIView 높이를 조정하는 문제가 있습니다. 나는 그 프로젝트를 설명했다. 컬렉션에 따라 UIView 높이를 조정하는 방법 콘텐츠보기 신속한 3?

enter image description here

는 내 프로젝트 이미지에 대해 설명하겠습니다.
각 오렌지 UIView는 각 UIView에 및 의 후행, 선행, 상한 및 하한 제약 을가집니다.
그러나 추가하지 않으면 오류가 발생하고 "높이"경고를 추가하기 때문에 "높이"를 각 UIView에 추가합니다.
UIView2에서 3 개의 컨테이너 뷰를 추가합니다. 각 컨테이너 뷰에는 3 개의 뷰 컨트롤러가 있습니다. (데이터 1보기, 데이터 2보기, 데이터 3보기)
각보기에 컬렉션보기를 내장합니다.
문제는 데이터 3보기에는 여러 콜렉션보기 셀 데이터가 있다는 것입니다. 따라서 Orange UIView의 높이는 콜렉션 뷰 내용에 따라 증가해야합니다.
현재 사용자가 데이터 3 분할 컨트롤 버튼을 클릭하면 고정 높이 상수 (높이 : 800)를 추가합니다.
그러나 이처럼 고정 된 높이를 설정하고 싶지는 않습니다.
저는 지난 주부터이 문제를 해결하려고 노력해 왔습니다. 나는 지금까지 이것을 풀 수 없었다.
누구든지 단계별로 설명해주세요. 왜냐하면 나는 무엇을해야할지 모른다.

+0

왜 높이 제한 조건의 콘센트를 만들고 코드를 통해 상수를 변경하지 않습니까? 동적 일 것입니다. 스토리 보드에서는 컨텐츠 크기에 대한 제한이 어렵습니다. – ChanWarde

+0

콜렉션 뷰에 포함될 정확한 데이터 수를 알 수 없기 때문에 일정한 높이를 만들고 싶지 않습니다. 높이 상수 = 400을 정의하지만 서버에서 데이터 수가 증가하면 다시 높이를 다시 정의해야합니다. –

+0

콘텐츠 크기가있는 제약 조건을 어떻게 추가 하시겠습니까 ?? – ChanWarde

답변

0

UITableView 또는 UICollectionViewUIScrollView에서 상속되므로 기본적으로 intrinsicContentSize이 없습니다. 뿐만 아니라 contentSizesizeThatFits: 방법을 반환하는

  • 당신은 컬렉션 뷰를 서브 클래스 화해, intrinsicContentSize 메소드를 오버라이드 (override) 할 수 있습니다
    당신은 내용의 크기와 같은 높이 (스크롤 할 수있는 공간)을 만드는 두 가지 방법이
  • 인터페이스에서 높이 제약 조건을 만들고 컬렉션보기의 콘텐츠 크기와 같게 설정하십시오.
+0

bro @Andrea, 그래서, 나는 collectionViewContentSize 콜렉션 뷰를 Data3View.swift 파일에 작성해야합니다. 안 그래? 예제 코드를 보여 주시겠습니까? –