Frage

Ich habe eine UITabBarController, die 5 View-Controller verwaltet. Ich erstelle die Tab-Leiste Elemente in ihren „init“ Methoden, damit sie angezeigt werden, bevor die Ansicht geladen wird. Ich frage mich nur, was, wie ich es tun sollte, weil es so viele Möglichkeiten zu sein scheint. Zum Beispiel für meine 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;
}

Welchen Weg soll ich es tun? Und warum ist es ein Titel sowohl für den tabBarItem und die View-Controller? Und ich glaube nicht, dass ich den Tag brauchen (die im ersten Verfahren festgelegt ist).

Danke !!

War es hilfreich?

Lösung

Nun meiner Meinung nach sind all diese Möglichkeiten in Ordnung, könnte es mehr readible sein, wenn Sie die UIImage in einer Zeile und legen Sie es in einer anderen Zeile deklarieren, anstatt sie alle Inline tun, aber am Ende erhalten Sie das gleiche Ergebnis .

Die TabBarItems haben einen Titel, der der Text, die iteself in der Tab-Leiste Elemente zeigen. View-Controller haben einen Titel für Navigation Controller Zwecke, der View-Controller-Titel in dem NavigationControllers NavBar angezeigt wird, wenn gesetzt. Und Sie Tags tun müssen, Tags ist die Art und Weise Sie die Tasten auseinander halten, wenn jemand auf sie klicken (wenn u das TabBar auf eigene Faust zu verwalten).

Andere Tipps

Der Grund gibt es mehr Möglichkeiten, um den Titel zu setzen, ist für convienece. Sie können einen Titel in der Navigationsleiste und einen Titel in der Tab-Leiste angezeigt werden soll.

Diese eigentlich recht häufig, da es weniger Platz ist ein Text in der Tab-Leiste angezeigt werden soll.

Wie viele Dinge in Cocoa, gibt es mehr als einen Weg, es zu tun. Die einzige „Richtigkeit“ müssen Sie besorgt sein über das, was am besten für Ihre Situation.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top