Sto provando ad animare le transizioni tra le schede del mio UITabBarController, che funziona bene quando premo i pulsanti di tabulazione. Tuttavia, quando passo le schede di programmazione chiamandoCome posso impostare a livello di programmazione la scheda selezionata di UITabBarController attivando anche shouldSelectViewController in UITabBarControllerDelegate
[self.tabBarController setSelectedIndex:2];
in un riconoscitore colpo gesto, la funzione shouldSelectViewController NON è chiamato nel mio UITabBarControllerDelegate delegato, e quindi la mia animazione non viene attivato.
C'è un modo per realizzare ciò che voglio? Posso attivare a livello di codice l'interruttore di tabulazione in modo diverso forse in modo che venga chiamata la funzione shouldSelectViewController?
Sì, è possibile chiamare il delegato in modo programmatico. Funzionerà. [self.tabBarController setSelectedIndex: 2]; darà l'effetto evidenziato al tabbaritem corrispondente –
@Puneet Come posso chiamare il metodo shouldSelectViewController del delegato UITabBarControllerDelegate? – herrtim
Se è stato impostato tabbarcontroller come root dell'applicazione, è necessario impostare il relativo metodo delegate presso l'app delegato. Quindi puoi chiamarlo da un'altra vista Comtrollers creando un oggetto di AppDelegate. è necessario passare due parametri, uno è TabbarController, che è possibile ottenere anche da AppDelegate e altro è il ViewController che si desidera mostrare. –