2013-10-15 2 views
0

탐색 컨트롤러를 사용하여 모달 뷰를 만들 때 탐색 모음 스타일을 불투명하게 설정할 수 없습니다. 다른 탐색 컨트롤러에서 모달 뷰를 제공한다고 언급해야합니다.모달 뷰의 탐색 모음 스타일

UINavigationController *navController = [[UINavigationController alloc] 
             initWithRootViewController:detailedViewController]; 
[navController setModalPresentationStyle: UIModalPresentationFullScreen]; 
[navController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal]; 

//also tried [navController navigationBar] setOpaque:YES]; with no luck 
navController.navigationBar.barStyle = UIBarStyleBlackOpaque; 
[self presentViewController:navController animated:YES completion:nil]; 

내가 부족 뭔가가 있어야 내가 볼 수없는, 그래서 어떤 도움도 좋을 것! : 여기에 대해서 이야기하고 코드입니다 NO로 설정 navigationBar.translucent :

+0

내비게이션 컨트롤러의 navigationBar가 nil이 아닌지 확인 했습니까? 'navigationBar'는 네비게이션 컨트롤러의 뷰의 일부이기 때문에 컨트롤러를 만들 때 반드시로드되는 것은 아닙니다. –

+0

'UIBarStyleBlackOpaque'가 사용되지 않습니다.'UIBarStyleBlack'을 시도해 보셨습니까? – Moxy

+0

@JonathanArbogast, 아니요, 네비게이션 바가 만들어 졌는지 확인하지 않았고 요점을 볼 수 있지만 새로운 뷰 컨트롤러 내부에서 NavigationBar 스타일을 변경하려고하면 'detailedViewController'와 동일한 결과가 발생합니다. 그럼에도 나는 그것을 점검 할 것이다. 감사!!!! @Moxy, 너는 절대적으로 맞다 !! 나는 그것을 지금 바꿀거야! – SantiFdezMunoz

답변

1

마지막으로 나는이 문제를 해결했다. 그것은 실제로 두 개의 내비게이션 컨트롤러를 사용하고 있으며 원래의 코드는 두 번째 중첩 된 내비게이션 컨트롤러를 사용하고 있다는 사실과 관련이있었습니다.

이 시점에서 두 가지 옵션이 있다고 가정합니다. 중첩 navController를 유지 관리하고 올바르게 구성하거나, 두 번째 navController를 제거하고, 기본 navController를 제거하고, 내 customView를 첫 번째 navController로 푸시합니다. .

여러분 모두에게 감사드립니다 !!

1

사전에

감사합니다. 작동하지 않는 경우에는 [navController loadViews]으로 전화하십시오. 제시 할 때까지로드하지 않을 수 있습니다.

+0

감사합니다. Adam,하지만 이미 반투명 설정을 테스트했습니다. 다른 옵션은 꽤 혼재스러워 보입니다. 나는 그것을 점검하고 알려줄 것입니다. 감사! – SantiFdezMunoz

+0

원하는 효과를 얻으려면 viewcontroller에서 호출하기 전에 호출해야합니다. – AdamG

+0

@SantiFdezMunoz이 (가)이 작품을 했나요? – AdamG