Me gustaría hacer que mi aplicación de iPhone pueda cambiar entre máscaras (o temas de diseño, o apariencia, como madera, metal, color de la tierra, hombres, niñas, etc.).¿Cómo cambiar las máscaras (o temas de diseño) en la aplicación iOS?
Prepararé algunos conjuntos de máscaras que contengan imágenes para botones y fondos, sonidos y colores de texto, y dejaré que el usuario decida qué conjunto de máscara quiere usar según la configuración de la aplicación.
¿Cuál es la mejor práctica para implementar esto?
Las condiciones son:
- Me gustaría utilizar el Interface Builder
- necesito para apoyar iOS 3.1.3 y más tarde
- Quiero hacer los conjuntos de pieles descargables desde internet (No puedo agrupar todas las carátulas de la aplicación, ya que un conjunto de carátulas requiere muchas imágenes y el tamaño del archivo de la aplicación podría aumentar si lo hago ... Tampoco quiero codificar ninguna información sobre carcasas específicas .)
- Si una máscara personalizada no contiene uno o algunos elementos (como una imagen o r archivo de sonido), quiero que use el elemento faltante del conjunto predeterminado de máscara.
- No quiero crear archivos Nib para cada aspecto. El archivo Nib para una pantalla debe ser el único en el paquete principal para facilitar el mantenimiento.
Estoy pensando en hacer una superclase de todos los UIViewControllers en mi aplicación y anular la parte que se cargue el archivo de plumilla, y en lugar de la carga desde el haz principal, la carga de los recursos de la piel que se guarda en el directorio del documento ... pero no sé cómo hacerlo ... El comportamiento predeterminado de los métodos de carga de plumillas siempre carga recursos del paquete principal y la información sobre los nombres de los archivos de recursos se pierde después de leer ...: (
Gracias de antemano por su ayuda.
Hay una explicación muy completa sobre cómo desollar una aplicación iOS aquí: http://stackoverflow.com/questions/8919334/how-to-create-multiple-themes-skins-for-iphone-apps?rq= 1 También explica cómo pelar una punta, esp. de iOS 5. –
Puede echar un vistazo a la siguiente biblioteca https://github.com/charithnidarsha/MultiThemeManager –