2016-06-06 3 views
2

여러 개의 사용자 정의 셀이있는 TableView가 있습니다. custom View on top of the cell runtime을 추가하고 싶습니다.UITableViewCell 런타임 맨 위에 사용자 지정 UIView를 추가하는 방법은 무엇입니까?

나는 이와 같은 세포가있다.

enter image description here

는 지금은 그것과 같아야합니다 있도록 동일한 셀 런타임에 HR Channel top view을 추가 할 수 있습니다. As example :

enter image description here 페이스 북 피드에 대해 생각해. 텍스트 포스트 셀, 이미지 포스트 셀, 그룹 포스트 셀, 이벤트 셀, 페이지 포스트 셀 (페이지에 게시 된 포스트)과 같은 사용자 정의 셀이있는 TableView가 있습니다. 이제 페이스 북은 다른 사용자가 게시물에 댓글을 달거나 댓글을 달거나 태그를 추가 한 경우 셀 상단에 맞춤보기를 추가합니다.

하나 이상의 맞춤 셀을 만들지 않고 셀 상단에 맞춤보기를 추가하려면 어떻게해야하나요?

+2

UIStackView를 사용하여 HR 채널 부분을 포함하여 전체 사용자 정의 셀을 저장할 수 있습니다. HR 채널 부분을 먼저 숨기고 런타임의 코드에 숨기기를 설정하도록 설정할 수 있습니다. HR 채널이 숨기거나 표시 될 때 UIStackView가 자동으로 셀의보기를 변경합니다. – EricXuan

+0

안녕하세요 @ EricXuan 감사합니다. 나는 UIStackView에 대해 알지 못했다. 나는이 기능이 iOS 9에 있다고 생각한다. 어쨌든 이것을 대답으로 쓸 수있다. 나는 그것을 받아 들일 것이다. :) – Nullify

답변

1

UIStackView를 사용하여 HR 채널 부분을 포함하여 전체 사용자 정의 셀을 저장할 수 있습니다. 그리고 필요할 경우 HR 채널 부분을 먼저 숨기고 런타임의 코드에 숨김을 설정하지 않을 수 있습니다. HR 채널이 숨기거나 표시 될 때 UIStackView가 자동으로 셀의보기를 변경합니다.

Holp it useful!

1

는 하나 개의보기에이 http://i.stack.imgur.com/1LZI8.png

Keep 아이콘, HR 채널 라벨과 오른쪽 아이콘에 따라 셀을 한 가지 디자인 마십시오. 제약 조건을 사용하여 높이를 지정하십시오. 보여 여부 및 heightForRowAtIndexPath 체크 동일한 조건에서

처럼도
(isTopViewToShow == true) ? cell.layoutConstraintHeightTopView.constant = 50 : cell.layoutConstraintHeightTopView.constant = 0; 

과 그에 따라 일정한 높이를 변경하고 어이를 제공할지 여부를 당신의 상태를 확인 cellForRowAtIndexPath에서 다음

IBOutlet NSLayoutConstraint *layoutConstraintHeightTopView; 

같은 높이의 함께 IBOutlet 확인 like

(isTopViewToShow == true) ? return 250 : return 200; 

희망이 도움이 될 것입니다 !!!

+0

이것은 훌륭한 옵션입니다. 심지어 그것에 대해서도 생각했습니다. 나는 UIStackView가 이것에 대한 좋은 유스 케이스라고 생각한다. 감사합니다 – Nullify

+0

이것이 해결책을 작동하는 경우 upvote 내 대답과 그것을 받아;) – Pushkraj

+0

upvoted !! 하나의 upvote 만 허용됩니다. :) UIStackView 내가 느끼는 더 적절한 대답입니다. – Nullify

관련 문제