Ich möchte die Standardaktion deaktivieren, wenn ein Benutzer auf das Tabbar-Element klickt.Aktion deaktivieren - Benutzer tippt auf das Tabbar-Element, um zum Stammansicht-Controller zu wechseln
Zum Beispiel habe ich eine Registerkarte mit Tab1, Tab2 und Tab3. In Tab1 kann der Benutzer von Ansicht1 zu Ansicht3 (Ansicht1> Ansicht2> Ansicht3) navigieren. Wenn sich Benutzer in View3 befindet und er Tab1 antippt, führt die Anwendung den Benutzer zu View1 (dem Stammansicht-Controller). Ich möchte diese Funktionalität deaktivieren. Ich möchte nicht, dass Tab1 auf alle View-Controller klopft. Wie kann ich das machen?
Edit:
Dieses Verhalten ist ein wenig seltsam, aber eine praktische Abkürzung bei tiefer Hierarchie!
Sie können folgende UITabBarControllerDelegate Methoden implementieren diese systemweite Verknüpfung zu deaktivieren:
#pragma mark -
#pragma mark UITabBarControllerDelegate
- (BOOL)tabBarController:(UITabBarController *)tbc shouldSelectViewController:(UIViewController *)vc {
UIViewController *tbSelectedController = tbc.selectedViewController;
if ([tbSelectedController isEqual:vc]) {
return NO;
}
return YES;
}
Arbeitete! Vielen Dank. – Mustafa