2017-02-28 1 views
0

(1) UIStackView, (2) 고정 높이의 UIView, (3) 다른 UIStackView로 구성된 UITableViewCell의 레이아웃 문제가 있습니다. 맨 위 UIStackView에서는 몇 가지 데이터 구조에 따라 세로로 UILabel의 몇 가지 인스턴스를 배치하려고합니다. 이 레이블은 높이가 다를 수 있습니다. UIStackView의 아래쪽에 UIButton의 인스턴스를 세로로 배치하려고합니다. 이 숫자는 일부 데이터 구조에 따라 다릅니다.두 개의 UIStackView를 가진 UITableViewCell

문제는 AutoLayout과 관련이 있습니다 (적어도 생각합니다). UITableViewCell은 화면에 배치해야 할 때 맨 위 UIStackView와 맨 아래 UIStackView를위한 충분한 공간을 모두 생성하는 방식으로 제약 조건을 설정합니다. 셀의 레이아웃은 별도의 XIB 파일에 정의되어 있습니다.

지금까지 상단 UIStackView에 대한 높이 제한이 있습니다. 레이블의 프레임 높이에 따라 스택 뷰의 높이가 조정됩니다. 그러나 높이가 항상 같은 값을 가지고 있다는 것이 밝혀졌습니다. 내 TableView에이 특정 UITableViewCell의 두 인스턴스가 필요하기 때문에 이것을 알고 있습니다. 하단 UIStackView에는 높이 제한이 없으며 항상 올바른 레이아웃을가집니다.

수직 포옹/압축 저항 우선 순위에 대한 속성을 조정해야합니까?

도움을 주시면 대단히 감사하겠습니다.

답변

0

어쩌면 내가 당신의 문제를 오해했는데, 왜 높이가 동적 인 것으로 생각되면 맨 위 StackView의 높이를 고쳐야합니까? 이 제약 조건을 제거하고 IB를 행복하게 유지하기 위해 StackView의 기본 크기 ("내용 압축 저항 우선 순위"아래)를 "자리 표시 자"로 설정해야합니다. 다른 제한 사항이없는 경우 맨 위 StackView는 맨 아래 스택과 동일하게 작동합니다.

+0

당신은 오해하지 않았습니다. IB를 행복하게하기 위해 높이 제한을 추가했습니다. 이 제약 조건을 제거하고 내부 StackView 만 'Placeholder'로 설정하면 모두 잘 작동하는 것 같습니다. 내 날 구원을 주셔서 감사합니다. – Raoul

+0

위대한, 다행스럽게 도울 수있어! 답변을 수락 된 것으로 표시하는 것을 잊지 마세요.) – AgentCorleone

관련 문제