objective-c - tipos - vista personalizada excel desactivada
¿Cuándo crear el complemento de Interface Builder para una vista personalizada? (2)
Creo que las pautas de Apple lo resumen muy bien.
Si está escribiendo un control que se usará en múltiples aplicaciones y es completamente genérico, entonces la creación de un objeto personalizado es una buena idea. Podrá visualizar el aspecto y establecer propiedades directamente desde Interface Builder.
Si su control está limitado a una aplicación, o está estrechamente relacionado con sus datos, entonces moverlo a un objeto personalizado realmente no le comprará mucho.
No es difícil crear una vista personalizada, hay muchas guías fáciles de seguir.
¿Cuándo recomienda integrar una vista personalizada en Interface Builder con un complemento? Al hojear la Guía de programación de plug-ins de Interface Builder de Apple encontré:
- ¿Sus objetos personalizados van a ser utilizados por una sola aplicación?
- ¿Sus objetos personalizados dependen de la información del estado que se encuentra solo en su aplicación?
- ¿Sería problemático encapsular sus vistas personalizadas en una biblioteca o marco independiente?
Si respondió afirmativamente a alguna de las preguntas anteriores, es posible que sus objetos no sean buenos candidatos para un complemento.
Eso responde algunas de mis preguntas, pero aún me gustaría que piensen sobre cuándo es una buena idea. ¿Cuáles son los beneficios y cuán grande es la inversión?
Es perfectamente razonable impulsar las clases de vista y controlador que utiliza su aplicación en un marco separado, integrado en su envoltorio de aplicaciones, para lo cual también produce un plug-in de Interface Builder.
Entre otras razones, las clases que se usan comúnmente en su aplicación se pueden configurar en su punto de uso en Interface Builder, en lugar de hacerlo en implementaciones dispersas de -awakeFromNib
. También es la única forma en que puede hacer que sus objetos expongan enlaces que se pueden configurar en el Interface Builder.
Es un poco de codificación, pero para las clases de vista y controlador que se usan en más de un lugar, y que requieren configuración adicional antes de que realmente se utilicen, probablemente ahorrará un montón de tiempo en general. Y su experiencia en desarrollo con su propio controlador y ver clases será como desarrollar con Cocoa''s.