2010-08-04 5 views
0

J'ai une application qui utilise plusieurs contrôleurs de vue. Dans un cas, j'ai besoin d'utiliser un int (int vies) dans un contrôleur de vue séparé d'où il est créé. J'ai essayé de l'employer et il jette et erreur à la construction réclamant des «vies» non déclarées. J'importe déjà le contrôleur de vue où l'int a été déclaré. Je suis coincé sur celui-ci.IPHONE Comment accéder aux variables d'autres classes/viewcontrollers

J'apprécierais toute aide.

Répondre

0

Utilisez les propriétés, ou le paramètre personnalisé et le getter pour les variables instanse.

+0

Merci pour les réponses instantanées! Pourriez-vous me donner un exemple rapide de la façon dont je pourrais le faire en utilisant un int? –

+0

- (int) getMyIntVariable {return myIntVariable; } – jamapag

0

Vous pouvez utiliser le délégué d'application pour stocker les informations dont vous avez besoin à différents endroits dans votre application.

La bonne façon serait d'implémenter votre propre protocole de délégué. Pour une discussion récente sur ce sujet, voir pass a variable up the navigation stack

+0

Après avoir regardé autour du délégué de l'application ressemble à l'endroit pour le faire. Est-ce que je stocke juste des variables dans appdelegate.h et puis cela le rend-il global? –

+0

presque, vous devez les déclarer, ajouter une ligne @property et ajouter une ligne @synthesize dans le fichier '.m'. Ensuite, vous pouvez y accéder en utilisant getters/setters, comme '[appDelegate setMyValue: 5];' où 'addDelegate' devrait pointer vers le délégué de votre application. – mvds

+0

Merci pour l'aide, mais je reçois encore quelques avertissements de construction et fonctionne bien jusqu'à ce que j'appelle la méthode get. // ViewControllerDemoAppDelegate.h NSInteger * MyInt; @property (nonatomic) NSInteger * MyInt; // ViewControllerDemoAppDelegate.m @synthesize MyInt; MyInt = 5; [version MyInt]; "ViewControllerDemoAppDelegate.h" fish = [ViewControllerDemoAppDelegate getMyInt]; BW- 1) ViewControllerDemoAppDelegate peut ne pas répondre à « + getMyInt » 2) Cession un entier en pointeur sans fonte devrais-je utiliser NSInteger? Est-ce que j'utilise les propriétés correctement? –

Questions connexes