Bonsoir ,
Je viens poster ici car je me mêle un peu les pinceaux.
Petite description :
Je disposais d'un petit jeu de mot secret, composé d'un view controller principal avec tous les objects dans le storyboard ( UITextField , UITextView .. ) , et d'une seule classe MainViewController qui elle seule faisait marcher l'appli
Maintenant , j'ai pensé faire deux classes au lieu d'une :
Une classe MyInterfaceController et SystemController .
MyInterface qui contiendrait seulement les déclarations des instances , et les actions ( bouton cliqué , UITextView maVariable .. )
Et puis SystemController qui s'occupe de gérer le fond , c'est à dire qui s'occupe d'écrire dans le TextView , etc .. MyInterface ne ferait qu'utiliser les méthodes du SystemController.
Sauf que niveau organisation, c'est pas top top ..
J'ai un truc du genre :
Ce que je voudrais faire , ce serait que cette classe n'appelle que les méthodes de la classe Control qui elle modifiera les attributs/instances de la classe MyInterface , sauf que je n'arrive pas à implémenter ce fonctionnement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 MyInterface.h #import <UIKit/UIKit.h> @class ControlSystemView; @interface MainViewController : UIViewController { @private __weak UITextField *machin1; UITextView *machin2; int truc1; } @property (weak,nonatomic) IBOutlet UITextField *machin1; @property (strong,nonatomic) IBOutlet UITextView *machin2; @property (nonatomic,assign) int truc1; /* Le bouton pour changer un nombre */ - (IBAction)change...:(id)sender; - (IBAction)end...:(id)sender;/* en rapport avec la fin de saisie dans un textField*/ - (IBAction)see..:(id)sender;/* en rapport avec des boutons*/ - (IBAction)send..:(id)sender; @end
Ou dois-je mettre les delegates , créer l'instance , comment implémenter la méthode pour que cela modifie la variable de la classe MyInstance ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 ControlSystem.h #import <Foundation/Foundation.h> @class MainViewController; @interface ControlSystemView : NSObject < UITextFieldDelegate, UITextViewDelegate > { MainViewController *instanceOfMainViewController; } -(void) resetCounter:(int) _counter; -(void) clearResults:(UITextView*) _resultsTextView; .. @end
J'espère que quelqu'un saura m'éclairer !
Merci d'avance
Edit :
Je viens de trouver cela :
Suis-je sur la bonne voie ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 @protocol UITextInputDelegate <NSObject> - (void)selectionDidChange:(id <UITextInput>)textInput; - (void)textWillChange:(id <UITextInput>)textInput; -(void) selectionWillChance:(id<UITextInput>)textInput;
Partager