2009-04-30 12 views
8

Tengo una biblioteca estática que incluye algunos xibs. Estos serán básicamente los mismos en todos los proyectos. Me gustaría incluir los xibs como parte de la biblioteca. Puedo incluir sus controladores de acceso, hacer referencia a estos controladores en el proyecto de llamada, pero luego no hay un xib para cargar. Cuando hago clic derecho en el xib en el proyecto de la biblioteca, no puede ser parte del objetivo.Empaquetado de un paquete con una biblioteca estática

Pensé en crear un CFPluginBundle pero eso crea un nuevo proyecto. Perdería todas mis referencias IBOutlet e IBAction. ¿Cuál es la mejor manera de reutilizar xibs que también tienen salidas y acciones para controladores específicos?

Respuesta

0

No estoy seguro de lo que quiere decir con "incluir los xibs como parte de la biblioteca", ya que las bibliotecas estáticas no pueden tener recursos, pero tampoco se envían por separado, por lo que no Necesitar. Si solo desea la reutilización de código para sus propios proyectos, puede guardar los xibs en cualquier lugar donde guarde la biblioteca estática, e incluir los xibs en cualquier proyecto que use la biblioteca.

Si va por la ruta CFPluginBundle, puede crear nuevos destinos de paquete en un proyecto existente; no hay nada de mágico en las plantillas, solo se encargan de crear archivos ficticios y activar las configuraciones correctas de compilación. Puede copiarlos en un nuevo objetivo en su proyecto existente y funcionará perfectamente. Dicho esto, no estoy seguro de lo que quieres decir con la pérdida de referencias de IBOutlet e IBAction, ya que esa información es parte del xib (y la clase que estás utilizando en el xib), no del proyecto.

2

Yo tenía el mismo problema cuando quería exportar mi proyecto como una biblioteca para otros desarrolladores usar. Encontré la solución perfecta para mi vista y parece que también responderá la tuya.

Hay un complemento xcode que le permite construir su proyecto como una biblioteca que también incluye los recursos.

https://github.com/kstenerud/iOS-Universal-Framework

No sé los chicos que construyeron este plugin, pero funciona como un encanto

+0

Cómo acabaste referencia a la punta? Estoy intentando initWithNibName: paquete, pero no sé qué poner en paquete. – OlivaresF

+1

Uso los archivos de punta y otros recursos como un desarrollo de aplicación regular. Esta herramienta finaliza todo el proyecto en una carpeta que tiene la biblioteca estática y los recursos separados. La aplicación que desea incluir esta biblioteca necesita hacer referencia a toda la carpeta que se exportó mediante esta herramienta, incluida la carpeta de recursos, y no solo el binario. –

Cuestiones relacionadas