Probleme avec setNeedsDisplay

hihcam

Membre confirmé
4 Juillet 2011
14
0
38
Bonjour à tous,

Tout d'abord voila mon code

DrawingView.h
Bloc de code:
@interface DrawingView : UIView {
...
}
DrawingView.mm
Bloc de code:
#import "DrawingView.h"
@implementation DrawingView
- (void)drawRect:(CGRect)rect {
...
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    [self setNeedsDisplay];
}
...
}
FirstViewConroller.h
Bloc de code:
@class DrawingView;
@interface FirstViewConroller : UIViewController {
DrawingView *DrawView;
...
}
@property ( nonatomic, retain)  DrawingView *DrawView;
...
FirstViewConroller.m
Bloc de code:
- (IBAction) switchView:(id) sender{
    SecondViewControler *myViewControler = [[SecondViewControler alloc]
                                            initWithNibName:@"SecondViewControler" bundle:nil];
    [self.view addSubview:myViewControler.view];
}
-(IBAction)_Rotation{
    [DrawView _Rotation];
    [DrawView setNeedsDisplay];}
SecondViewControler.h
Bloc de code:
@interface SecondViewControler :  UIViewController {
    UIWebView *wb;
}
@property ( nonatomic, retain) IBOutlet UIWebView *wb;
SecondViewControler.m
Bloc de code:
@implementation SecondViewControler
@synthesize wb;

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
...
      /*
ici je veux appeler la méthode setNeedsDisplay de DrawView mais j'arrive toujours pas a le faire :(
      */
        [self.view removeFromSuperview];
...
}
...
Pour l'instant je ne peux rafraîchir mon Uiview qu'après un clique avec la souris ( touchesBegan [self setNeedsDisplay] ) mais c'est pas ce que je veux :(

J'ai essayé avec ça mais cela n'a rien changé
1
FirstViewController *ViewControler = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil];
[ViewControler _reload];
( -(void) _reload{ [DrawView setNeedsDisplay];} )
2
DrawingView *Draw_View = [[DrawingView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame];
[Draw_View setNeedsDisplay];
 
salut,
Je crois que mon problème n'a rien avoir avec setNeedsDisplay
Je veux seulement acceder a une methode de l'instance ( DrawView ) depuis une autre class et d’après quelque recherche je pense que je dois utiliser la delegate mais je sais pas encore comment faire merci de m'aider