0

UIViewController가 있는데 저는 UGavigationBar를 progmaticlly 드로잉합니다. 어느 회전에서나 작동하지만 UINavigationBar가 일단 그려지면 회전을 변경하면 사라집니다!회전 변경 후 UINavigationBar가 사라짐

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation { 
    if (CGRectEqualToRect(navBar.frame, CGRectMake(0, 0, 768, 44))) { 
     navBar.frame = CGRectMake(0, 0, 1024, 44); 
    } else { 
     navBar.frame = CGRectMake(0, 0, 768, 44); 
    } 
} 

답변

2

내가 지금 여기 물건을 제안하고있어 내가 테스트 적이 있다는 것을 해본 적이 없다 : 여기

회전의 변화에 ​​대한 코드입니다.

추가 할 수 있습니다. [navBar setNeedDisplay]; 하지만 가장 좋은 방법이라고 생각하지 않습니다. 이 방법은 애니메이션 내에서 호출되는

토론 : 나는 당신이 또한 그것의 애니메이션을 얻어야한다 무엇을보고
는 차라리 UIViewController

- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration 

에 그리고에서이 방법을 확인할 것 뷰를 회전하는 데 사용되는 블록입니다. 이 메서드를 재정의하고이를 사용하여 뷰 회전 중에 발생해야하는 추가 애니메이션을 구성 할 수 있습니다. 예를 들어,이 도구를 사용하여 내용의 확대/축소 수준을 조정하거나 스크롤러 위치를 변경하거나보기의 다른 애니메이션 가능 속성을 수정할 수 있습니다.

관련 문제