UINavigationBar benutzerdefinierte Titelposition
Habe ich eine custom made UINavigationBar (verschiedene Größe, hintergrund, etc) , hat innen einen eigenen Titel anzeigen. Ich benutzte diesen code um dies zu erreichen:
UIView * mainView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth, kScreenHeight)];
mainView.backgroundColor = [UIColor yellowColor];
UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0,0,kScreenWidth,80)];
navBar.autoresizingMask = UIViewAutoresizingFlexibleWidth;
UINavigationItem *currentItem = [[UINavigationItem alloc] init];
UILabel *label = [[UILabel alloc] init];
label.font = [UIFont fontWithName:@"Helvetica-Bold" size: 30.0];
[label setBackgroundColor:[UIColor clearColor]];
[label setTextColor:[UIColor whiteColor]];
[label setText:self.title];
[label sizeToFit];
[currentItem setTitleView:label];
[label release];
[navBar pushNavigationItem:currentItem animated:NO];
[currentItem release];
[mainView addSubview:navBar];
[navBar release];
self.view = mainView;
[mainView release];
Aber mein problem ist jetzt, dass, selbst wenn der benutzerdefinierte Titel-Ansicht ist korrekt Hinzugefügt, es ist nicht vertikal zentriert mit der NavBar. Was ich bin fehlt?
Dank!
InformationsquelleAutor der Frage Valentin Radu | 2011-05-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie
setTitleVerticalPositionAdjustment:forBarMetrics:
im IOS 5den Titel zu ändern position, es funktioniert auf normalen Titel z.B.:InformationsquelleAutor der Antwort Tobias Ahlin
Ihnen erstellt Sie
UINavigationBar
mit einer Höhe von 80 Punkte, wenn ein standard -UINavigationBar
hat 44 Punkte. Es wahrscheinlich positionieren Sie es mittig auf einen 44-Punkte Zentrum...Können Sie versuchen, eine
UIView
mit einer Höhe von 80-Punkte und fügen Sie denUILabel
zentriert drin. (nicht getestet, nur eine Vermutung)InformationsquelleAutor der Antwort gcamp