Existe-t-il un outil GUI qui inspecte la hiérarchie des vues d'une application iOS? Je pense à l'inspecteur Web de Webkit ou à des outils similaires. Je cherche à déboguer les problèmes de mise en page, comme les vues ayant la mauvaise position ou la mauvaise taille, ou un enfant qui n'est pas correctement contenu dans son parent. Actuellement, je dois ajouter des affirmations qui testent ces différentes conditions à la main, ou définissent différentes couleurs d'arrière-plan sur différentes vues, et comme vous pouvez l'imaginer, c'est une façon vraiment fastidieuse de s'y prendre.
J'ai regardé les instruments UI recorder
, mais cela enregistre et lit uniquement les actions de l'interface utilisateur »et, dans tous les cas, ne fonctionne que pour les applications Mac.
Y a-t-il une meilleure solution?
la source
Je ne sais pas s'il existe un outil d'inspection de vue GUI, mais j'ai eu un peu de chance avec la méthode de débogage sur UIView:
-recursiveDescription
si vous mettez le programme en pause dans le débogueur et saisissez-le dans GDB (Edit: fonctionne également dans LLDB)
Vous obtenez une impression de l'ensemble de votre hiérarchie de vues. Vous pouvez également l'appeler sur une vue spécifique pour obtenir une impression de la hiérarchie des vues de cette vue.
Il peut être un peu fastidieux de parcourir les informations que vous en tirez, mais cela m’a été utile.
Le mérite revient à cet article de blog qui parlait de cette méthode et qui était également lié à cette note technique Apple utile, mais plutôt difficile à trouver .
la source
Curieusement, il existe maintenant une autre option, http://revealapp.com/ , qui, à partir de cet article, est en version bêta ouverte (gratuite). Comme vous pouvez le voir, c'est un autre inspecteur visuel.
EDIT 2014-04-05: Reveal est sorti de la bêta et n'est plus gratuit. Il y a cependant un essai de 30 jours.
la source
Cette question est ancienne mais permettez-moi de mettre ici des informations sur le nouvel outil que je développe: https://github.com/glock45/iOS-Hierarchy-Viewer
la source
Juste pour garder ce fil à jour, j'ai récemment joué avec Spark Inspector . Ce n'est pas gratuit, mais c'est très agréable.
la source
Le débogueur FLEX fournit un inspecteur de vue dans l'application qui vous permet de modifier l'interface utilisateur dans une application en cours d'exécution. Il enregistre également les requêtes réseau.
https://github.com/Flipboard/FLEX
la source
Gratuit: tapez simplement ceci dans l'inspecteur:
Commercial: http://revealapp.com/ J'ai testé la version bêta de Revealapp, c'était bien mais avec des bugs. Un autre outil commercial: http://sparkinspector.com/ il fonctionne de manière transparente.
la source
Swift 4.
iOS :
macOS :
Utilisation (dans le débogueur):
po myView.dump()
la source
Cela vide tout dans la fenêtre de débogage. (Difficile à lire): (Travailler sur iOS 10, Xcode 8.3.3
la source
La réponse approuvée ne fonctionne plus pour moi, en utilisant Xcode 8 et Swift 2.3. Voici ce qui fonctionne pour moi:
po UIApplication.sharedApplication().keyWindow?.recursiveDescription()
la source
Pour swift / Xcode 10, entrez ceci dans la console de débogage:
Il imprimera une hiérarchie récursive pour tout élément donné
UIView
.(Crédit: Comment déboguer votre hiérarchie de vues à l'aide de recursiveDescription )
la source