viewlocale ts4515 tengo support sesion saber olvide iniciar es_es desactivar cuenta crear como bloqueo apple activacion iphone objective-c notifications

iphone - ts4515 - ¿Crear mi propio UIControlEvent y activarlo?



olvide mi cuenta de iphone (2)

Tengo una clase personalizada de una UIView que he hecho dentro de mi viewcontroller. Quiero hacer que esta clase sea reutilizable y, por lo tanto, no quiero compilarla para que funcione solo con este 1 controlador de vista. Debido a esto, creo que la mejor forma de decirle a mi controlador de visualización que el usuario ha interactuado con la clase es crear de algún modo mi propio UIControlEvent. Tal vez algo así como:

[customClass addTarget:self action:@selector(whatIWantToHappen) forControlEvents:UIControlEventWhatever];

No sé mucho sobre hacer esto, ¿alguna sugerencia sobre esto?


Puede hacerlo UIControl , que hereda de UIView, pero proporciona algunos métodos adicionales para manejar objetivos y acciones. Eche un vistazo a las constantes , tal vez uno de los eventos de control predefinidos ya se ajuste a su factura. De lo contrario, podría definir sus propios eventos en el rango provisto por UIControlEventApplicationReserved ; sin embargo, nunca debe UIControlEventApplicationReserved sus propias cosas en su UI... , ese ''espacio de nombres'' está reservado para UIKit.


Además de la respuesta de omz, puede obtener una advertencia del compilador al hacer esto:

[self addTarget:self action:@selector(selector:) forControlEvents:CustomControlEvent];

Al compilador no le gusta el valor personalizado que se usa para el último parámetro, que es de tipo UIControlEvents , por lo que arroja una advertencia.

Hice esto:

enum CustomControlEvent : UIControlEvents { CustomControlEventWHATEVER = UIControlEventApplicationReserved }; typedef enum CustomControlEvent CustomControlEvent;

¡Mirad! No más advertencias

Encontré esta notación en esta respuesta de .

NB Para UIControlEvents , estoy evitando fuertemente el uso de cualquier valor no disponible, por lo que solo uso el valor UIControlEventApplicationReserved .

Además, typedef renuncia a la necesidad de escribir ''enum'' cada vez y es habitual.