2010-12-13 30 views
4

Je pensais que je voulais partager mes connaissances avec vous autour du framework Three20.Three20 TTNavigator TTViewController charge automatique XIB

Il est ennuyeux si vous utilisez TTNavigator et que vous avez personnalisé VC qui est sous-classe de TTViewController. Il ne charge pas le NIB automatiquement.

TTNavigator* navigator = [TTNavigator navigator]; 
TTURLMap* map = navigator.URLMap; 
[map from: @"app://myvc" toViewController: [MyVC class]]; 

Il existe une solution de contournement et assez élégante.

juste faire une autre sous-classe de TTViewController et remplace la classe d'avoir ceci:

- (void) loadView 
{ 
    [super loadView]; 

    // load automatically the NIB 
    [[NSBundle mainBundle] loadNibNamed: NSStringFromClass([self class]) owner: self options: nil]; 
} 

Le VC charge le NIB automatiquement lorsque le VC est en cours de chargement pour la première fois.

Répondre

1

Le projet TTNibDemo dans le répertoire samples a un VC qui est une sous-classe de TTViewController. Ce VC a une plume et il charge la plume avec une fonction dans AppDelegate. Vérifiez si cela ne fonctionne pas pour vous.

+0

ouais, je l'ai vu, c'est moche. vous devez fournir le nom NIB à chaque fois et mettre la fonction personnalisée dans l'URL. – kororo