2014-03-28 3 views
0

저는 매우 이상한 문제에 직면 해 있습니다. UIView grandWrapper가 있습니다. 즉, 내 grandWrapper의 높이를 0으로 애니메이트 할 때 grandwrapper의 높이를 0으로 설정해야합니다. 그 모든 내부 뷰는 그 grandWrapper View 내부에 존재했기 때문에 없어지 겠지만, 높이를 0으로 움직이면 모든 서브 뷰는 여전히 존재합니다. 누구든지 도와 줄 수 있습니까?UIView의 높이를 조절하기위한 애니메이션

p.s. 프로그래밍 방식으로 하위보기를 작성합니다. 미리 감사드립니다.

답변

0

서브 뷰의 부모 높이에 따라 높이를 조정하려면 서브 뷰의 autoresizingMask 속성에 UIViewAutoresizingFlexibleHeight이 포함되도록하십시오.

또는보기의 clipsToBounds 속성을 YES로 설정할 수 있습니다.

+0

안녕하세요 덕분에 @kudoCC가 작동합니다 :) – user3422986

0
당신이 grandWrapper 할 때 다음 하위 뷰 2.If

-(void)clearReportContent 
{ 
    if(grandWrapper!=nil) 
     [[grandWrapper subviews] makeObjectsPerformSelector: @selector(removeFromSuperview)]; 
} 

화면에 표시되는 아래와 같은 기능을 호출하여 grandWrapper 하위 뷰를 제거 할 설치 1. 귀하의 질문에

에서

조금 혼란 높이를 0으로 설정하면 이 시작될 때 grandWrapper에 하위보기를 추가 할 때 처음으로 grandWrapper.cliptoBounds=YES;을 설정합니다.

+0

Im을 제거하지 않고, 0에서 150까지의 grandWrapper의 높이를 애니메이션으로 만들었으며, 버튼 탭 150-0에서 다시 애니메이션을 적용하므로 모든 내부 뷰가 존경심을 갖고 사라지길 바랍니다. 그들의 부모 실종에. – user3422986

+0

그런 다음 두 번째 옵션을 사용하거나 @KudoCC에서 말한 것처럼 하위 뷰에 자동 크기 조정 마스크를 설정하십시오 – svrushal

관련 문제