1

iPod/Music 응용 프로그램이 재생 목록을 탐색하는 데 사용하는 것과 동일한 하이브리드 및 탭 막대를 사용하려는 응용 프로그램에서 작업하고 있습니다. 기본적으로iPod/Music 같은 탭/탐색 하이브리드

:

  • 탐색 특정 목록 트리로 더 깊은 탐구를 처리합니다.
  • 대부분의/모든 부 화면에 나타나는 목록을 전환 할 수있는 하단의 탭 표시 줄입니다.
  • 탭 표시 줄의 내용은 모든 화면에서 일정합니다.
  • 탭하는 것에 대한 반응은 모든 화면에서 동일합니다. 즉, 사용자가 루트로 다시 이동하여 해당 목록에 넣습니다.

내비게이션이 탐색에 포함 된 탭에 포함되어 있습니까? 그것이 내가 원하는 것을 확실히 할 수있는 것처럼 보이지도 않는다. 반면에 기본 탐색 앱을 사용하고 탭을 추가하면 여분의 코드가 많이 생기지 않을까요?

무엇이 최선의 기본 접근 방식입니까?

답변

2

저는이 용도로만 응용 프로그램을 만들었습니다. 가장 좋은 방법은 개별 뷰 컨트롤러 인 가장 좁은 부분부터 시작하는 것입니다. iPod 예제에서는 아티스트, 앨범, 재생 목록, 노래 등의 컨트롤러가 포함됩니다. 참고 재생 목록을 탭하면 노래 목록으로 이동합니다. 이들은 두 개의 분리 된 뷰 컨트롤러입니다.

iPod 앱에 표시되는 각 탭에는 내비게이션 컨트롤러가 있습니다. 탐색 컨트롤러는 앱 탭의 루트보기 컨트롤러를 래핑합니다. 그런 다음 각 nav 컨트롤러가 탭 컨트롤러의 ViewController로 설정됩니다. 당신은, 당신은 재생 목록의 ViewController ([self.navigationController pushViewController:theListOfSongsViewController animated:SUREWHYNOT])에서이 작업을 수행 할 선택한 재생 목록에있는 노래의 Playlists-> 목록, 말의 전환을 처리하고자한다면 코드는 다음과

FirstTabViewController *first = [[FirstTabViewController alloc] init...]; 
SecondTabViewController *second = ...; 

UINavigationController *nav1 = [[UINavigationController alloc] initWithRootViewController:first]; 
UINavigationController *nav2 = [[UINavigationController alloc] initWithRootViewController:second]; 

myTabBarController.viewControllers = [NSArray arrayWithObjects:nav1, nav2, nil]; 
// Then make sure to release things to avoid leaks 

처럼 보일 것입니다.

+0

있습니다. 감사! –

1

지금까지 나는 대상 탭의 탐색 컨트롤러를 탭 스위치의 루트로 다시 이동시키기위한 약간의 사용자 지정 코드로 각 창에서 UINavigationControllers를 사용하여 UITabBarController를보고 있습니다.

관련 문제