2014-02-06 4 views
0

을 표시하고 내가 resetTopView 후이 코드를보기 프레임 높이 감소와 검은 색 막대가 내 프로젝트 ECSlidingMenu을 사용하고

UINavigationController *transferView = [self.storyboard instantiateViewControllerWithIdentifier:@"Transfer"]; 

     [self.slidingViewController anchorTopViewOffScreenTo:ECRight animations:nil onComplete:^{ 
      CGRect frame = self.slidingViewController.topViewController.view.frame; 
      self.slidingViewController.topViewController = transferView; 
      self.slidingViewController.topViewController.view.frame = frame; 
      [self.slidingViewController resetTopView]; 
     }]; 

을 사용하여 수동으로 rootview을 변경해야합니다, 나는 검은 이상한 바있어 .

코드를 실행하면 (다시 RootView 변경) 검은 색 막대가 더 커집니다.

누구든지이 문제를 겪고 있습니까?

Screenshot

+0

현재'topViewController'이 코드인가? 프레임이 설정되어 있습니까? – Wain

+0

예, 다음 코드가 My FirstViewController에 설정되어 있고 FirstView -> TransferViewController에서보기를 변경하고 싶습니다. –

+0

프레임이 설정 되었습니까? 그리고 그것은 다시 움직이게합니까? 디버그하여 프레임을 확인하고 다른 것이 프레임을 변경하고 있는지 확인하십시오. – Wain

답변

1

그냥 이런 식으로 코드를 변경합니다.

ECSlidingViewController *slidingViewController = self.slidingViewController; 

[slidingViewController anchorTopViewOffScreenTo:ECRight animations:nil onComplete:^{ 
    CGRect frame = slidingViewController.topViewController.view.frame; 
    slidingViewController.topViewController = transferView; 
    slidingViewController.topViewController.view.frame = frame; 
    [slidingViewController resetTopView]; 
}]; 

이 문제가 해결되었습니다. 나는 이유를 모른다. .. 그러나 그것은 효과가있다.

감사합니다 : -> Switching views with ECSliding without navigation menu