cocoa cocoa-touch osx plist

cocoa - ¿Cómo Apple hace que el info.plist muestre su "Lista de propiedades de información"?



cocoa-touch osx (1)

Mis plists simplemente comienzan con "Root". El suyo contiene matrices de cosas útiles que puede seleccionar para ajustar la configuración. El info.plist específico que estoy viendo está en un proyecto de iphone. He investigado esto un poco, (no mucho) pero ni siquiera he detectado un olor a solución.

¿Qué mecanismo es armar esto? ¿Puedo doblarlo a mi voluntad?

Para aclarar, no me estoy refiriendo a simplemente editar el plist, sino usando el Property List Editor para definir las listas desplegables en la columna de la izquierda, como se comporta la lista de Apple info.list.

Normalmente, mis plists se mostrarán en el editor con 3 columnas. Clave, tipo y valor Info.plist tiene 2, ¿cómo se configura así que su comportamiento es diferente en el Editor de lista de propiedades?

Este enlace en Apple define las claves que se utilizan en Info.plist.

Referencia clave de la lista de propiedades


Los nombres que ve en los menús desplegables en el Editor de listas de propiedades son proporcionados por lo que Apple llama una "definición de estructura de lista de propiedades". Este es un archivo basado en XML que define claves y valores específicos para un tipo particular de lista de propiedades. Property List Editor utiliza esto para asociar nombres legibles para personas con claves de lista de propiedades particulares, así como valores predeterminados razonables, tipo de información, etc.

Property List Editor oculta la columna "Tipo" cuando se usa una definición, porque obtiene la información del tipo automáticamente de la definición de la estructura. Todavía puede usar Editar> Tipo de valor para cambiar el tipo manualmente si lo desea. También puede cambiar manualmente la definición que está usando el Editor de listas de propiedades a través de Ver> Tipo de lista de propiedades.

Xcode incluye una definición incorporada para los archivos Info.plist, por lo que puede ver la personalización automáticamente al abrir un archivo Info.plist. Si está interesado en cómo se definen las definiciones de la estructura, puede echar un vistazo en /Developer/Platform/MacOSX.platform/Developer/Library/Xcode/Plug-ins para las definiciones incorporadas. No creo que haya documentación oficial para este formato, pero no es demasiado difícil analizar los ejemplos.