color buttons ios delegates inputstream nsinputstream cfreadstream

buttons - iOS-Configuración del delegado de la transmisión de entrada a otra clase



ionic text (2)

Puede encasillar el delegado y configurarlo en algún delegado particular y recibirá una llamada.

Me pregunto si es posible establecer el delegado de flujo de entrada a otra clase. Hasta ahora, todos los ejemplos que he encontrado son con uno mismo: [inputStream setDelegate:self] . Quiero configurar delegado a otra clase como ViewController no auto. Gracias por adelantado.


si su ViewController está respondiendo a NSStreamDelegate , puede iniciar una instancia del controlador y establecer el delegado como de costumbre.

@interface ViewController : NSOperation<NSStreamDelegate> ...

-

ViewController *vc = [[ViewController alloc] init]; [inputStream setDelegate:vc];

por ejemplo

actualizar:

utilice una variable id o UIViewController<NSStreamDelegate> en la clase TCPConnection para mantener el elemento primario.

Por ejemplo:

// TCPConnection.h @interface TCPConnection : NSOperation<NSStreamDelegate> @property(nonatomic, assign) UIViewController<NSStreamDelegate> parent; -(id)initWithParent:(UIViewController<NSStreamDelegate> *)p_parent; ...

...

// TCPConnection.m -(id)initWithParent:(UIViewController<NSStreamDelegate> *)p_parent { self = [super init]; self.parent = p_parent; return self; } // UIViewController<NSStreamDelegate>.m TCPConnection *connection = [[TCPConnection alloc] initWithParent:self];

O una solución individual, donde siempre solo llama

TCPConnection *connection = [TCPConnection sharedInstance];

y tiene solo una instancia de esta clase. Para la mayoría de los casos, la mejor manera;)