online linea instalar features descargar compilador objective-c xcode interface-builder ibplugin

objective-c - linea - xcode ide



¿Cómo se muestran UIViews personalizados en InterfaceBuilder? (2)

Me parece disfrutar el diseño de nuevos UIViews y UIControls que implementan su propio método -drawRect: . Esto funciona bien para mí, especialmente cuando se compone usando UIViews en Interface Builder .

Pero componerlos en Interface Builder es molesto porque simplemente aparecen como aburridos rectángulos simples.

Sería fantástico si las vistas se renderizaran tal como lo hacen los controles incorporados.

¿Hay alguna manera de estructurar mi proyecto para que Interface Builder represente mis vistas personalizadas?


Para hacer esto, en realidad tiene que crear un complemento para Interface Builder que use su clase personalizada. Una vez que haya creado e instalado su complemento, podrá arrastrar y soltar instancias de su clase (su vista) en otra ventana / vista / lo que sea como cualquier otro control. Para comenzar a crear complementos IB, consulte la Guía de programación de plug-ins de Interface Builder . Además, recomiendo echar un vistazo al libro de Aaron Hillegass, Programación Cocoa para Mac OS X. Además de estar muy bien escrito y ser fácil de entender, tiene un capítulo sobre cómo crear sus propios controles IB Palette.


Esto se puede lograr marcando su subclase @IBDesignable con @IBDesignable . Una vez que haga esto, sus vistas personalizadas se mostrarán en Interface Builder. Incluso puede agregar parámetros que se pueden configurar marcándolos como @IBInspectable . Aquí hay un ejemplo de Swift:

@IBDesignable class customView: UIView { @IBInspectable var count: Int = 0 }

Hay un artículo sobre NSHipster que brinda más detalles.