문제

5 개의 뷰 컨트롤러를 관리하는 UitabbarController가 있습니다. 뷰가로드되기 전에 표시되도록 "Init"방법으로 탭 막대 항목을 만듭니다. 나는 많은 방법이있는 것 같기 때문에 내가 어떤 방법으로 해야하는지 궁금합니다. 예를 들어 내 datePickerViewController의 경우 :

- (id)init {
    if((self = [super init])) {
        // ================ THIS ==========================
        UIImage *clockIcon = [UIImage imageNamed:@"clockicon.png"];
        UITabBarItem *localTabBarItem = [[UITabBarItem alloc]
                initWithTitle:@"Date" image:clockIcon tag:0];
        [self setTabBarItem:localTabBarItem];
        [localTabBarItem release];
        // ================ OR THIS ========================
        [self setTitle:@"Date"];
        UITabBarItem *localTabBarItem = [[UITabBarItem alloc] init];
        [localTabBarItem setImage:[UIImage imageNamed:@"clockicon.png"]];
        [self setTabBarItem:localTabBarItem];
        [localTabBarItem release];
        // ================ OR THIS ========================
        UITabBarItem *localTabBarItem = [[UITabBarItem alloc] init];
        [localTabBarItem setTitle:@"Date"];
        [localTabBarItem setImage:[UIImage imageNamed:@"clockicon.png"]];
        [self setTabBarItem:localTabBarItem];
        [localTabBarItem release];
    }
    return self;
}

어떤 방법으로해야합니까? 그리고 왜 Tabbaritem과 View Controller에 대한 제목이 있습니까? 그리고 나는 태그가 필요하다고 생각하지 않습니다 (첫 번째 방법으로 설정 됨).

감사!!

도움이 되었습니까?

해결책

제 생각에는 이러한 방법 중 하나라도 괜찮습니다. 한 줄로 UIIMAGE를 선언하고 모든 인라인을 수행하지 않고 다른 줄로 설정하면 더 읽기 쉬울 수 있습니다. 그러나 결국 동일한 결과를 얻을 수 있습니다.

Tabbaritems에는 탭 바 항목 Iteself에 표시되는 텍스트 인 제목이 있습니다. View Controllers는 탐색 컨트롤러 목적을위한 제목이 있으며, View Controllers 제목은 설정시 NavigationControllers Navbar에 표시됩니다. 그리고 태그가 필요합니다. 태그는 누군가가 버튼을 클릭 할 때 버튼을 구분하는 방식입니다 (탭 바를 직접 관리 할 때).

다른 팁

타이틀을 설정하는 몇 가지 방법이있는 이유는 Convienece를위한 것입니다. 내비게이션 바에 하나의 제목과 탭 막대에 하나의 제목을 표시 할 수 있습니다.

이것은 탭 막대에 텍스트를 표시 할 공간이 적기 때문에 실제로 매우 일반적입니다.

코코아의 많은 것들과 마찬가지로, 그것을하는 방법은 여러 가지가 있습니다. 걱정해야 할 유일한 "정확성"은 상황에 가장 적합한 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top