2014-02-11 2 views
2

두가보기 탐색 컨트롤러에 포함 된 컨트롤러 (첫 번째 & 초)과 반투명이 NO로 설정되어있는 사이에 검은 화면이 표시됩니다. 하지만 난 첫 번째 ViewController에서 프롬프트를 사용했습니다. 왜 내비게이션 바 내 프로젝트에서보기

나는 자동 레이아웃을 사용했다. 당신이와 자동 레이아웃없이 해결책을 알고 있다면 난 정말 행복 것이다

enter image description here

내가 두 번째의 ViewController에 밀어

enter image description here

. 나는이 개념을 많이 시도했지만 어떤 도움이

enter image description here

탐색 모음에서 약간의 검은 화면을 얻었다.

도움이 저를 어떻게 해결하는.

참고 :

반투명이 YES로 설정 말을하지 않습니다. 나는 그것이 맞으면 네가 완벽하게 작동하는지 안다. 하지만 난 반투명 달성 필요한 것은 1 업데이트 NO

없습니다 : 이미지가 업데이트됩니다.

+0

검은 색 공간이 탐색 바 아래에 있다면 어쩌면 파란색보기가 너무 짧을까요? – Marc

+0

입니다. 알아. 왜오고 싶어요 – codercat

+0

첫 번째 VC에서 내비게이션 막대가 너무 큰 이유는 무엇입니까? ... – Marc

답변

0

이 코드를 사용했습니다. 하지만 난 어떤 하드 코드 솔루션을하지 않습니다. 다른 해결책을 알고 계시다면

[UIView animateWithDuration:0.3 animations:^{ 
     self.view.frame=CGRectMake(0, self.navigationController.navigationBar.frame.size.height+20, 320, 504); 
}]; 
-1

은 navigationView의 backgroundColor을 설정하려고합니다.

+0

덕분에 달려있다. 하지만 나는 이미 그것을 압니다. 내가 문제를 해결하는 방법을 원한다 – codercat

4

나는 자동 레이아웃을 꺼져 - 솔루션은 다음과 발견

의 ViewController 먼저

-(void)viewWillDisappear:(BOOL)animated 
{ 
    self.view.backgroundColor = [UIColor whiteColor]; 

} 

의 ViewController 둘째 나는 그것이 잘 작동 자동 레이아웃이이 도움이되기를 바랍니다

-(void)viewWillLayoutSubviews 
{ 
    AppDelegate *appDelegate = [[UIApplication sharedApplication]delegate]; 
    appDelegate.window.backgroundColor = [UIColor whiteColor]; 
    self.myView.frame = CGRectMake(0.0, 64.0, 320.0, 504.0); 

} 

마찬가지로

+1

@iDev - Autolayout의 경우에도 잘 작동한다. –

+0

나는이 접근법을 시도했다.나는 최적화 된 방법이 필요해. 값을 하드 코드 할 필요가 없다. – codercat