Utworzyłem aplikację przy użyciu storyboardu i uzyskałem numer TabBarController
z 5 kartami. Każda zakładka ma tabicon i tab title
. Po wybraniu karty chcę zmienić ikonę tabbar
. Jak mogę skorzystać z storyboard
?Jak zmienić wybrany obraz paska zakładek za pomocą scenorysu
Odpowiedz
poniższy kod zmieni umieszczenie zakładek obraz w wyborze: identyfikator
UITabBarItem *tabBarItem = [[tabbar items] objectAtIndex:0];
[tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"img_hover.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"img.png"]];
zmiany zwyczaju i dodać zdjęcie
Mam go.
Podklasa UITabBarController
- MyTabBarController
Over napisać viewDid ładunek:
zapisu
UITabBarItem *tabBarItem0 = [self.tabBar.items objectAtIndex:0];
[tabBarItem0 setFinishedSelectedImage:[UIImage imageNamed:@"selectedimage.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"image.png"]];
jak ten zestaw dla wszystkich elementów i umieszczenie zakładek w scenorys ustawić regulator umieszczenie zakładek MyTabBarController
. Działa dobrze.
- (void)setFinishedSelectedImage:withFinishedUnselectedImage:
jest przestarzałe. Jeśli używasz storyboardy, jest to tak proste, jak
UITabBarItem *tabBarItem0 = [self.tabBar.items objectAtIndex:0];
UIImage* selectedImage = [[UIImage imageNamed:@"settings-active"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
tabBarItem0.selectedImage = selectedImage;
EDIT
w Swift:
var settingsItem = self.tabBar.items?[0] as UITabBarItem
settingsItem.selectedImage = UIImage(named: "home-selected")
Zauważ, że ten kod należy w viewDidLoad
ręcznym swojej UITabBarController
podklasy.
Możesz teraz zrobić to z łatwością w scenopisie. Na każdym sterowniku tabview, który posiadasz, powinien zawierać element paska paska w hierarchii (wygląda jak mała niebieska gwiazda), Kliknij na to, a ustawienia po prawej stronie powinny wyglądać jak na poniższym obrazku. Tutaj można zmienić obraz paska zakładek o numerze &.
W Xcode 6 można by pomyśleć, można to zrobić z nowym „Wybrany obraz” pola w Inspektorze atrybuty elementu Tab Bar, ale z jakiegoś powodu, że prowadzi do pustego obrazu, gdy wybrana jako z Xcode 6.1.1. Istnieje jednak szczegółowe obejście tego problemu: http://stackoverflow.com/a/26802597/650558 –