Récupérer une propriété d'une classe dans une autre

octobre 2014 modifié dans Objective-C, Swift, C, C++ #1

Bonjour à  tous,


 


En gros mon titre est ma question et généralement je n'ai pas de problème pour faire cela. Mais dans ce cas, je n'arrive pas à  récupérer une propriété.


 


Donc je suis dans un environnement Cordova et j'ai une classe qui hérite de CDVViewController. Dans le .h je déclare la propriété toto (j'ai spécifié pour être sûr qu'elle est en lecture/écriture).


 


Dans le .h de mon AppDelegate, j'importe le .h de ma classe ci-dessus. Dans le init de ce AppDelegate il y a bien un alloc/init de cette même classe ci-dessus :



self.viewController = [[MainViewController alloc] init];

Maintenant, comment feriez-vous pour récupérer la propriété toto ?


 


Merci pour votre aide.


 


EDIT : a oui, j'ai ceci dans le AppDelegate :



@property (nonatomic, strong) IBOutlet CDVViewController *viewController;

J'ai viré le IBOutlet pour voir mais bien sur, aucun changement. (on ne fait rien avec IB car c'est une simple UIWebView qui prends tout l'écran, pas d'autre UI dans l'App.


Réponses

  • Je ne sais pas comment marche Codova, mais je n'ai pas tout compris.


    À quel moment comptes-tu récupérer la valeur ?


    Est-ce que le ViewControlleur dont tu essayes de retrouver la valeur de toto est déjà  visible ? Car là , j'ai l'impression que tu essayes de récupérer une valeur en créant une autre instance d'un objet, et qui par conséquent n'a pas la valeur dans toto que tu souhaites.


  • Tu crée un objet de type MainViewController et tu l'assigne à  un objet de type CDVViewController. c'est de la que vient ton problème.


  • A oui alors le init de ma classe où ce trouve la propriété toto est réalisé à  l'init dans le AppDelegate.


    Par contre, j'essaye de récupérer toto, toujours dans le AppDelegate mais dans la méthode applicationWillEnterForeground.


     


    Sinon oui, je pense qu'elle est visible. Elle est déclaré dans le .h est readWrite et je la demande après l'avoir initialisé.


  • octobre 2014 modifié #5

    Tu peux développer Samir ? (MainViewController hérite de CDVViewController). Cast (j'essaye de suite -> marche pas) ?


Connectez-vous ou Inscrivez-vous pour répondre.