2009-10-26 3 views
5

New York Times iPhone 응용 프로그램에는 5 개의 탭 막대 항목이있는 Tab Bar가 있습니다. 최신 탭을 선택하면 앱이 제목과 요약/요약을 UITableView에 표시합니다. 읽으려는 개별 스토리를 선택하면 탭 표시 줄이 사라지고 응용 프로그램의 상태에 따라 표시되거나 사라지는 머리글과 바닥 글로 바뀝니다. 앱이 탭 바를 "숨기는"방법은 무엇입니까?보기를 밀 때 Tab Bar를 "숨기기"

감사합니다.

답변

6

탐색 컨트롤러 스택으로 푸시되고있는보기 컨트롤러의 hidesBottomBarWhenPushed 매개 변수가 yes로 설정되어 있습니다. 이 코드는 테이블 뷰의 -didSelectRowAtIndexPath에서 이와 유사합니다.

NSDictionary *newsItem = [newsItems objectAtIndex:[indexPath row]]; 
NewsDetailViewController *controller = [[NewsDetailViewController alloc] init]; 
[controller setHidesBottomBarWhenPushed:YES]; 
[controller setNewsItem:newsItem]; 
[[self navigationController] pushViewController:controller animated:YES]; 
[controller release], controller = nil; 

documentation for hidesBottomBarWhenPushed을 살펴보십시오.

p.s. 'iphone'태그를 추가하면이 질문에 대한 가시성이 높아집니다.

+0

정답으로 표시해야합니다. 감사합니다 매트 어쨌든 :) – Ahmed

2

필자는 선택적으로 (다른 상태에 따라) 탐색 컨트롤러 도구 모음을 표시해야하는보기가 있습니다. 이것은 내가보기에 사용한 해결책입니다. & 탐색을 통해 &이 사라질 때보기 도구 모음 (애니메이션 포함)을 숨 깁니다. 당신이 겪고있는 것처럼 들리 네요.

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 

    // Show the nav controller toolbar if needed 
    if (someBool) 
     [self.navigationController setToolbarHidden:NO animated:animated]; 
} 

- (void)viewWillDisappear:(BOOL)animated 
{ 
    [super viewWillDisappear:animated]; 

    // Hide the nav controller toolbar (if visible) 
    [self.navigationController setToolbarHidden:YES animated:animated]; 
} 
10

탭 막대를 숨기려는 클래스에서이 코드를 구현하십시오.

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { 
if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) { 
    // Custom initialization 
} 
self.hidesBottomBarWhenPushed = YES; 
return self; 
} 

모두 최고입니다.

관련 문제