2014-12-04 15 views
11

Jak umieścić UILabel w centrum paska nawigacyjnego w XCode 6? Czy to w ogóle możliwe? Mogę umieścić tutaj, na przykład, UIButton, ale nie mogę umieścić UILabel. Jeśli nie, co mogę zrobić? Umieścić UIButton z odpowiednim tekstem i uniemożliwić mu kliknięcie?Jak umieścić UILabel w centrum paska nawigacyjnego?

Z góry dziękuję.

Odpowiedz

17

W Xcode 6 jeśli chcesz umieścić etykietę wewnątrz UINavigationBar najpierw musisz umieścić UIView tam, a następnie umieść UILabel wewnątrz UIView (to jest ze Storyboard btw).

Jeśli nie umieścić UIView pierwszy wtedy UILabel nigdy nie będzie się stawiać na UINavigationBar.

8

Utwórz UIView i dodaj UILabel jako subskrybcję, a następnie ustaw tytuł title NavigationItem jako uprzednio utworzony UIView.

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 150, 40)]; 
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 150, 40)]; 
label.text = @"Hello"; 
label.textAlignment = NSTextAlignmentCenter; 
[view addSubview:label]; 
self.navigationItem.titleView = view; 

Uwaga: Nie zapomnij ustawić własne wartości klatek, aby uzyskać lepszy wynik.

0

Po prostu upewnij się, że wypróbowałeś metodę viewWillLayoutSubviews zamiast viewDidLoad, co było dla mnie najlepsze. Twoje zdrowie!