¿Cuándo se necesita el atributo Registrar en las aplicaciones de Xamarin.iOS?
-
20-12-2019 - |
Pregunta
¿Cuándo exactamente es el Register
¿Atributo requerido en una aplicación Xamarin.iOS?
encontré un puesto existente eso da alguna explicación de lo que hace, pero no tengo claro cuándo es necesario.
He escrito una aplicación bastante extensa sin que me obliguen a usarla. Register
en cualquiera de mis UIViewController
o UIView
subclases.
En mi caso, estoy haciendo todo mi diseño desde código C#, así que no xib
archivos que se encuentran.Suena como uno de los casos de uso para Register
está interactuando con vistas creadas en Interface Builder.
¿Alguien puede arrojar algo de luz sobre esto?
Solución
Cada vez que el tiempo de ejecución de ObjectiveC necesite crear una instancia del tipo administrado, deberá registrarse.Si crea sus vistas y controladores personalizados a partir del código, no tendrá que usarlos, si es que tiene alguno.Si planea crear controles de UI reutilizables, debe registrarlos para que alguien que use editores de diseño pueda usarlos.Digamos que crea una UIView personalizada llamada MyView y la registra, puede arrastrar un control UIView a un controlador de vista en XCode y cambiar su tipo a MyView en lugar de UIView.Todavía no se representará en el editor XCode, pero se creará como MyView en tiempo de ejecución; de lo contrario, se creará como UIView.
Otros consejos
Cualquier objeto que derive de NSObject se exportará automáticamente a Objective-C; técnicamente no es necesario el atributo [Registro].
Sin embargo, el atributo es útil cuando desea que el nombre de Objective-C sea diferente al predeterminado:
[Register ("MyObject")]
class MyCustomObject : NSObject
{
}
Esto registraría la gestión MyCustomObject
escriba con Objective-C usando MyObject
como nombre nativo.