Appeler une méthode depuis une autre classe
Bonjour ,
J'ai créé une socket , je voudrai que la méthode (ou il y a le code de la socket soit dans une classe) et que depuis la classe ViewController j'appelle la méthode socket pour qu'elle se lance.
Donc j'ai créé une classe : CIMO2.h et CIMO2.m ; C'est la ou il y a le code de la socket :
CIMO2.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "ViewController.h"
@interface CIMO2 : NSObject <NSStreamDelegate>
{
NSInputStream *inputStream;
NSOutputStream *outputStream;
}
-(void)socket;
@end |
CIMO2.m
Code:
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
|
#import "CIMO2.h"
@implementation CIMO2
-(void)socket
{
CFReadStreamRef readStream;
CFWriteStreamRef writeStream;
CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)@"localhost", 6, &readStream, &writeStream);
inputStream = (__bridge NSInputStream *)readStream;
outputStream = (__bridge NSOutputStream *)writeStream;
[inputStream setDelegate:self];
[outputStream setDelegate:self];
[inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[inputStream open];
[outputStream open];
}
@end |
ViewController.h
Code:
1 2 3 4 5 6 7 8 9 10 11
| #import <UIKit/UIKit.h>
#import "CIMO2.h"
@interface ViewController : UIViewController
{
}
@end |
ViewController.m
Code:
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
| #import "ViewController.h"
#import "CIMO2.h"
@class CIMO2;
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
[CIMO2 socket]; //C'est la ou il y a l'erreur : No know class method for selector 'socket'
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end |
Si quelqu'un pourrait m'expliquer comment faire pour que ça marche vue que je comprend pas trop comment ça pourrait marcher ..
Merci