/ / So ändern Sie die anfängliche Auswahl der Tab-Leiste programmatisch - iphone, object-c, ios, uitabbarcontroller

So ändern Sie die anfängliche Auswahl der Registerkartenleiste programmgesteuert - iphone, object-c, ios, uitabbarcontroller

Probleme beim Ändern der ursprünglichen Tab-LeisteAuswahl in einer Anwendung (d. h. die mittlere Registerkarte wird beim Start der App ausgewählt und nicht die Registerkarte ganz links). Die App verwendet Storyboards und der Controller für die Registerkartenleiste wurde später in der Entwicklung über die Storyboard-Methode hinzugefügt.

tabBarController.selectedIndex = 1;

Der obige Code funktioniert nicht (da ich keinen eigenen View-Controller mit meiner Tab-Leiste verbunden habe, nur der Standard-UITabBarController):

Haben Sie etwas gegoogelt und viele andere Ressourcen angesehen und keine Lösung für eine App gefunden, die ursprünglich nicht mit der Tab-Tab-Anwendung von Apple erstellt wurde.

Antworten:

28 für die Antwort № 1

Da dies der anfängliche View-Controller ist und keine Unterklasse ist, müssen Sie dies in Ihrer appDelegate festlegen.

Fügen Sie in AppDelegate.m Folgendes zu Ihrem hinzu application:didFinishLaunchingWithOptions: Methode:

- (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 für die Antwort № 2

tabBar setSelectedItem: versuchen Sie es in Ihrem viewDidLoad