Problemy z zmianą początkowego paska kartwybór w aplikacji (tj. środkowa karta jest wybierana przy uruchamianiu aplikacji, a nie po lewej stronie karty). Aplikacja używa storyboardów, a kontroler paska kart został dodany później w fazie rozwoju za pomocą metody storyboard.
tabBarController.selectedIndex = 1;
powyższy kod nie działa (ponieważ nie mam niestandardowego kontrolera widoku podłączonego do paska kart, tylko domyślny UITabBarController):
Zrobili trochę googlowania i spojrzeli na wiele różnych zasobów i nie znaleźli rozwiązania dla aplikacji, która nie została początkowo utworzona za pomocą aplikacji Apple Tab Bar Application.
Odpowiedzi:
28 dla odpowiedzi № 1Ponieważ jest to początkowy kontroler widoku i nie jest podklasą, musisz ustawić to w swoim appDelegate.
W AppDelegate.m dodaj następujące elementy do swojego application:didFinishLaunchingWithOptions:
metoda:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
// Select the left-most tab of our initial tab bar controller:
UITabBarController *tabBar = (UITabBarController *)self.window.rootViewController;
tabBar.selectedIndex = 0;
return YES;
}
1 dla odpowiedzi nr 2
tabBar setSelectedItem:
spróbuj użyć tego w swoim viewDidLoad