Conexión de una clase personalizada a la interfaz gráfica

Necesito ayuda para hacerlo bien, por favor. Creé una aplicación de dibujo para iPad usando un controlador de vista (MainViewController) y una clase personalizada que contiene todo el código de dibujo (DibujarVista.m). La DibujarVista la clase se implementa en un vista UIView y el programa funciona absolutamente bien, lo que permite dibujar con toques de dedos. El borrado del dibujo se logra tocando varias veces en secuencia.

Ahora me gustaría agregar más funciones (como borrar el dibujo y habilitar deshacer y rehacer) implementando algunos botones. El problema es que a pesar de haber declarado una salida al dibujo en mi DibujarVista clase (UIImageView *dibujarImagen) No puedo encontrar una forma de conectar físicamente esta salida en el generador de interfaz a la interfaz gráfica (MainViewController_iPad.xib).

¿Hay alguna manera de conectarlos por favor? ¡¡Gracias!!

preguntado el 01 de julio de 12 a las 08:07

¿Ha declarado realmente el IBOutlet calificador para UIImageView *drawImage;? -

Sí, lo tengo, en la clase DrawView. -

2 Respuestas

Obtengo los resultados que creo que estás buscando siguiendo los siguientes pasos:

  • Cree una nueva subclase de controlador de vista llamada MainViewController_iPad diseñado para iPad y con un archivo xib correspondiente.
  • Crear código para un UIView subclase llamada DrawView.
  • Agregue una línea a DrawView.h: @property (nonatomic, strong) IBOutlet UIImageView *drawImage; y sintetizar la variable.
  • Use IB para poner un UIView y UIImageView en mi archivo xib.
  • Cambiar la clase de la UIView a DrawView utilizando el inspector de identidad.
  • Con la DrawView todavía seleccionado cambiar al inspector de conexiones.
  • Arrastre una conexión desde el drawImage salida a la UIImageView objeto.

¿Hay algo en eso diferente de lo que estás haciendo o me estoy perdiendo un punto en la pregunta?

Respondido 01 Jul 12, 13:07

No con el propósito de hacer que la conexión funcione. Cómo se define realmente su contenido sería una consideración aparte. (Aunque, supongo que si lo carga desde su propio plumín y contiene el UIImageView, haría la conexión en ese en lugar del xib del controlador de vista). - molinos phillip

Sin embargo, tengo un problema... ¿Cómo puedo referirme a drawImage desde MainViewController.m? Aparece como no declarado allí.. - Jeddi

El mismo concepto básico: cree un IBOutlet en el controlador principal como el de DrawView y vincúlelo también. (O enlace a DrawView y haga referencia a su propiedad). - molinos phillip

¡Resuelto! Estaba usando @property (fuerte, no atómico) UIImageView *drawImage; en lugar de @property (no atómico, fuerte) IBOutlet UIImageView *drawImage; ¡Hice el cambio y drawImage apareció mágicamente! Muchísimas gracias.

Respondido 01 Jul 12, 14:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.