0 votes

SubViewTwoController non déclaré (première utilisation dans cette fonction) (obj-c)

Ahoy hoy tout le monde :)

Aquí est une liste de liens. Vous en aurez besoin lors de la lecture de l'article.

Je suis un débutant en Objective-C et j'essaie de l'apprendre pour le développement d'applications pour iPhone. J'ai utilisé le tutoriel lié dans la liste de liens pour créer une application standard avec une simple navigation de base. Cette application contient un "RootView" qui est affiché au démarrage. L'écran de démarrage lui-même contient trois éléments qui sont tous liés à SubViewOne. J'ai réussi à faire fonctionner l'application jusqu'à présent. Ce que je veux changer, c'est que le deuxième élément soit lié à la SubViewTwo.

Lorsque je le "Build and Go", j'obtiens les erreurs suivantes :

RootViewController.m :

SubViewTwoController *subViewTwoController = [[SubViewTwoController alloc] init];

// SubViewTwoController non déclaré (première utilisation dans cette fonction)

et dans SubViewTwoController.m

[super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview

aucune superclasse n'est déclarée dans @interface pour 'SubViewTwoController'.

et la même chose après

- (void)dealloc {
    [super dealloc];

Je pense que vous aurez également besoin des fichiers d'en-tête, les voici donc !

RootViewController.h

#import <UIKit/UIKit.h>  

@interface RootViewController : UITableViewController {  
    IBOutlet NSMutableArray *views;  
}  

@property (nonatomic, retain) IBOutlet NSMutableArray *views;  

@end

SubViewOneController.h

#import <UIKit/UIKit.h>  

@interface SubViewOneController : UIViewController {  
    IBOutlet UILabel *label;  
    IBOutlet UIButton *button;  
}  

@property (retain,nonatomic) IBOutlet UILabel *label;  
@property (retain,nonatomic) IBOutlet UIButton *button;  

- (IBAction) OnButtonClick:(id) sender;  

@end

et SubViewTwoController.h

#import <UIKit/UIKit.h>

@interface SubViewTwo : UIViewController {
      IBOutlet NSMutableArray *views;  
}

@end

Je serais très heureux si vous laissiez vos idées avec une courte explication. Merci beaucoup d'avance !

benny

2voto

Dave DeLong Points 156978

Il y a plusieurs choses qui se passent ici :

  1. @interface SubViewTwo : UIViewController {

Votre classe s'appelle "SubViewTwo", et non "SubViewTwoController".

  1. aucune superclasse n'est déclarée dans @interface pour 'SubViewTwoController'.

Votre classe s'appelle "SubViewTwo", et non "SubViewTwoController". Vous avez probablement @implementation SubViewTwoController en haut du fichier.

La solution la plus simple consiste à modifier la ligne @interface dans SubViewTwoController.h comme suit :

@interface SubViewTwoController : UIViewController {

Alors n'oubliez pas de #import "SubViewTwoController.h dans votre RootViewController.m fichier.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X