Question

Extension du modèle d'utilitaire

Je travaille avec le modèle d’utilitaire Xcode (Mainside / Flipside) et j’ai besoin d’ajouter un nouvel écran. J'ai ajouté:

 docView.xib (copy of FlipsideView.xib)
 docView.m
 docView.h
 docViewController.m
 docViewController.h

Dans rootViewController.h, j'ai ajouté:

 UINavigationBar *docNavigationBar;
 docViewController *docViewController;

 @property (nonatomic, retain) UINavigationBar *docNavigationBar;
 @property (nonatomic, retain) docViewController *docViewController;

Dans rootViewController.m, j'ai synthétisé les ajouts suivants:

 @synthesize docNavigationBar;
 @synthesize docViewController;

J'importe mon fichier .h dans rootViewController.m:

   #import "docViewController.h"   

Lorsque j'essaie de compiler mon erreur avec:

RootViewController.m:22: error: syntax error before 'docViewController'

Avertissements:

RootViewController.m:160: warning: property 'docViewController' requires method       '-docViewController' to be defined - use @synthesize, @dynamic or provide a method implementation

RootViewController.m: 160: avertissement: la propriété 'docViewController' requiert la méthode 'setDocViewController:' à définir - utilisez @synthesize, @dynamic ou fournissez une implémentation de méthode

Qu'est-ce que j'ai manqué?

Était-ce utile?

La solution

En fait, je pense qu'il avait l'intention de mettre docViewController (son nouveau contrôleur de vue, n'est-ce pas?). Dans tous les cas, si c'est ce que vous vouliez dire et non pas FlipsideViewController comme le dit Eric, votre problème est que vous l'avez nommé de la même manière que la propriété. Mauvaise idée. La convention objective-C normale consiste à mettre la première lettre de vos noms de classe en majuscule, puis en minuscule lorsque vous les utilisez comme propriétés, etc.

docViewController *docViewController;

devrait être:

DocViewController *docViewController;

Cela fonctionnera beaucoup mieux ainsi:)

Autres conseils

Dans rootViewController.h, ressemble à votre ligne de déclaration:

docViewController *docViewController;

Devrait être:

FlipsideViewController *docViewController
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top