5 ms·
Related to this, I'll highly recommend Reveal[1], a macOS app which allows for (semi-)live view debugging of iOS apps. Reveal provides view hierarchy info, and
by saidajigumi 9y ago
Related to this, I'll highly recommend Reveal[1], a macOS app which allows for (semi-)live view debugging of iOS apps. Reveal provides view hierarchy info, and renders it on (the mac's) screen in a highly inspectable way.
Specifically, both flat 2D and a really great 3D exploded renderings of the active views are available. This is really brilliant for acquiring a deeper understanding of many initially opaque aspects of iOS view construction.
Likewise, the inspectors let you tweak and adjust autolayout constraint values, frames, bounds, and other view settings live. All together, working with Reveal restores a refreshing amount of the ease of view debugging and iteration speed that I love about working with modern in-browser debugging.
[1] https://revealapp.com/ https://revealapp.com/
- LeoNatan25 9y agoWith the advancements in Xcode, I really don't think Reveal is worth it. It also requires embedding a binary framework (I think it's closed source) in your application, which can be messy for debug vs production builds. Just not worth the hassle.
- siphor 9y agoYou don't need to embed a binary framework for Reveal. And I think it's still a lot better than the Xcode tool.. I like using it to fine tune the positions of views instead of guessing and re-running which happens occasionally. (Can't do that w/ Xcodes built in tool)
- LeoNatan25 9y agoLooks like it to me, or use some scripts in the debugger for the simulator. http://support.revealapp.com/kb/getting-started/reveal-integration-guide http://support.revealapp.com/kb/getting-started/reveal-integ... Still not the most convenient. I'm not sure why they need that server, because they can discover and modify everything using the runtime.
- LeoNatan25 9y agoYou can't modify from the UI, but you can use the debugger to modify the instance values (using the object pointer).
- saidajigumi 9y agoI disagree. In my experience, Xcode 8's view debugging is a bit of a joke compared to Reveal. Reveal's visualization of the view hierarchy is much better, especially when it comes to illuminating some subtleties of view ordering. Next, every time I've used Xcode's support, it kills our app. Fun times! I've never had a problem with Reveal interfering with the running app state. Last but not least, Xcode's view debugging doesn't allow live modification, which is key to iteration speed. These features together have saved me enough time that Reveal paid for itself before the trial was over -- and I'd used Xcode's view debugger well before I discovered Reveal. I wouldn't have put down money for a tool that wasn't a big delta from the Xcode baseline. Setting up for Reveal is trivial, making your "messy" speculation seem baseless. For an app that uses CocoaPods, it's literally just adding one line to the appropriate target: pod 'Reveal-SDK', :configurations => ['Debug'] If that gets into your release build, you've got much bigger problems than an external SDK.