objective - Depuración de Xcode: visualización de imágenes
xcode manual pdf (5)
Me encanta usar el depurador de Xcode. En cualquier momento puedes echar un vistazo a los valores de la variable, incluso puedes cambiarlos.
El problema aumenta cuando estás probando imágenes, y aquí aparece la pregunta:
¿Puedo de alguna manera VISUALIZAR la imagen a la que hace referencia la variable de imagen? Sé que puedo ver bytes sin procesar, pero sería mucho más amigable para los humanos si eso hiciera aparecer una ventana con su contenido.
Xcode podría no ser compatible. Tal vez hay una herramienta externa que ayudaría con eso?
Editar para Xcode 5:
Ahora, cuando coloque el cursor sobre un nombre de variable de imagen, habrá un icono de "ojo" a la derecha. ¡Simplemente haz clic para ver la imagen actual! Si no tiene una variable UIImage (por ejemplo, es una propiedad de otro objeto), puede seguir usando la respuesta anterior:
Respuesta anterior: pregunta anterior, pero estaba buscando una respuesta. Comenzando con la respuesta de Avraham, intenté algunos experimentos para mostrar una imagen de iOS de lldb sin tener que recompilarla o agregarla a una vista. Finalmente se me ocurrió:
po [UIImagePNGRepresentation(watchImage) writeToFile:@"/Users/<userName>/Desktop/watchImage.png" atomically:NO];
Guardo esta cadena en un editor de texto y la pego cuando la necesito. Esto almacena la imagen actual que me interesa (en este caso, "watchImage") en un archivo PNG en el Escritorio. Entonces puedo simplemente abrir este archivo con Vista previa.
Puede poner un punto de interrupción en la línea de su imagen, y luego en el depurador, simplemente escriba:
po your_UIImage_object
po
significa print object
, es un comando GDB que mostrará varias informaciones útiles sobre el objeto pasado, en su caso la imagen.
Si le gusta trabajar con la consola lldb, use el comando chisel "visualizar"
propina:
después de la instalación, puede establecer un punto de interrupción condicional después de configurar el UIImage con la acción: "visualizar myUIImageToShowWithQuickLook"
esto le mostrará la imagen automáticamente cuando se detenga el depurador.
Use Quick Look para inspeccionar imágenes en el depurador de Xcode.
Seleccione un UIImage
o NSImage
en el depurador, luego haga clic en el ícono "ojo" Quick Look.
Al igual que otras áreas de OS X, ¡también puede usar la barra espaciadora para una mirada rápida!
Quick Look en el depurador también se puede implementar para sus propias clases:
Habilitación de búsqueda rápida de tipos personalizados
Las variables Función de búsqueda rápida en el depurador de Xcode le permiten obtener una evaluación visual rápida del estado de una variable de objeto a través de una representación gráfica, que se muestra en una ventana emergente en la vista de variables del depurador o en su código fuente.
Este capítulo describe cómo implementar un método de búsqueda rápida para sus tipos de clases personalizados, de modo que las variables de objeto de esos tipos también se puedan representar visualmente en la ventana emergente de búsqueda rápida.
EDITAR:
A partir de Xcode 5, el depurador puede mostrarle la representación visual de las variables UIImage / CGImageRef.
Xcode en sí no puede hacerlo. No sé sobre herramientas externas.
Lo que estoy haciendo para probar imágenes durante la depuración es convertir los datos sin formato en un formato de archivo de imagen, como .png, y luego guardarlo en algún lugar, y luego abro la imagen con cualquier herramienta de visualización de imágenes.
Tengo un código para ese propósito, que básicamente se ve así:
NSData *imageData = UIImagePNGRepresentation(self.myUIImage);
[imageData writeToURL:desktopURL atomically:YES];
Y solo estoy copiando y pegando este código en el que quiero ver el contenido de una imagen en ejecución.
Asegúrese de deshacerse de este código lo antes posible debido al alto costo de la conversión de UIImage
a NSData