2010-11-15 5 views
1

Voici comment configurer mon application. J'ai une vue racine qui charge une sous-vue par dessus la méthode viewDidLoad. Dans la sous-vue, j'ai un bouton qui, lorsqu'il est cliqué, se cache et révèle la vue racine. Tout fonctionne très bien, mais je déteste avoir une vue qui est chargée mais qui n'est pas utilisée. J'ai essayé de mettre une méthode dans le délégué qui fait cela:Impossible d'accéder à la méthode dans le délégué

[theLaunch release]; 

... où theLaunch est mon sous-vue.

Cette méthode, située dans mon délégué, s'appelle hidetheLaunch.

Alors je tentais d'appeler cette méthode à partir du sous-vue:

[[UIApplication sharedApplication].delegate hidetheLaunch]; 

Mais il dit -hidetheLaunch not found in protocol.

Est-ce que je fais tout faux?

Merci d'avance!

Répondre

2

Vous devez d'abord jeté le UIApplicationDelegate à votre type de délégué spécifique:

[((MyAppDelegate *) [UIApplication sharedApplication].delegate) hidetheLaunch]; 
+0

Quand je substitue mon nom de délégué dans le code que vous avez fourni, il dit qu'il ne soit pas déclaré. Ai-je besoin d'importer le délégué? –

+0

oui, et utilisez le bon nom. –

+0

Eh bien, chaque fois que j'importe le délégué, il provoque des erreurs partout dans mon application. Je viens juste de décider de sauter tout ça. :) –

Questions connexes