Pregunta

Actualmente estoy trabajando en una aplicación con esta estructura:

Tengo un controlador de vista que llamaremos MainViewController, que maneja todos los eventos de toque para la aplicación. MainViewController tiene como una variable de instancia, una vista llamada canvasView. canvasView tiene como UITextView llamada hiddenTextView.

Theres otras vistas invisibles y por lo tal UITextView no es la primera registrar toques.

¿Cómo consigo el UITextView registrar toques en esta configuración? Específicamente para hacer selecciones de la caja autoCorection (En realidad su selección Kanji para el japonés, pero supongo que es un mecanismo similar).

He intentado:

[canvasView.hiddenTextView touchesBegan: toca withEvent: evento]

método de touchesBegan del MainViewController. He hecho esto para touchesBegan, moví, y terminó.

Creo que en realidad trabajaba para uno de los 50 o así reza lo he intentado, pero no sé lo que ha cambiado.

¿Alguna idea sobre cómo puedo conseguir que esto funcione?

¿Fue útil?

Solución

[canvasView.hiddenTextView becomeFirstResponder];

probablemente hacer lo que quiera.

La cadena respondedor en el iPhone es una cosa un poco difícil. Me parece que es por lo general más fácil evitar la superposición de controles, de manera que en cualquier caso dado que es completamente ambigua en cuanto a que el control debe recibir información de la que toca.

Si usted es la superposición de una gran cantidad de controles, y con frecuencia se cambia entre los que se ocultan o visible, que es una buena señal de que es posible que desee simplemente aplicar más subclases de UIViewController, y cambiar entre aquellos en vez de cambiar de salir y los controles. Otra opción es hacer subclases personalizados de UIView y cambiar aquellos dentro y fuera lugar -. Lo que quiero decir, en realidad quite el viejo de la subvista (no ocultarlo), y la adición de la nueva

Por supuesto, hay algunas ocasiones en las Ocultación / es mucho más fácil que la subclasificación.

Espero que ayude. Referencia: docs UIResponder de Apple . (Tenga en cuenta que cualquier UIViewController o UIView es una subclase de UIResponder.)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top