LayoutInspector
Tool to debug layouts directly on iOS devices: inspect layers in 3D and debug each visible view attributes
Install / Use
/learn @isavynskyi/LayoutInspectorREADME
Introduction
<a href="https://github.com/isavynskyi/LayoutInspector/blob/master/LayoutInspector_demo.gif"><img src="https://github.com/isavynskyi/LayoutInspector/blob/master/LayoutInspector_demo.gif" title="LayoutInspector demo"/></a>
Features
- [x] Inspect layouts directly on iOS devices
- [x] Inspection could be triggered only if app is running under
DEBUGbuild configuration, so it won't affect any other kind of the app builds (i.e.RELEASE) - [x] Objective-C compatible
- [x] Works on all devices with iOS 11.0+
Example
To run the example project, clone the repo, and run pod install from the Example directory first.
Requirements
- iOS 11.0 and higher
- Xcode 10.3 and higher
- Swift 5.0 and higher
Installation
LayoutInspector is available through CocoaPods. To install
it, simply add the following line to your Podfile:
pod 'LayoutInspector'
Usage
Layout inspection could be trigger:
- manually whenever you want (on some actions, events, notifications etc)
LayoutInspector.shared.showLayout()
- automatically when taking app screenshot
LayoutInspector.shared.setAutoTrigger(.screenshot)
- automatically on device shaking
LayoutInspector.shared.setAutoTrigger(.shake)
Swift
import LayoutInspector
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
LayoutInspector.shared.setAutoTrigger(.screenshot)
return true
}
}
Objective-C
@import LayoutInspector;
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[LayoutInspector.shared setAutoTrigger:AutoTriggerScreenshot];
return YES;
}
@end
Changelog
| Version | Description |
| ------------- | ------------- |
| 1.2.1 | 📝 Font attribute added to inspection pane|
| 1.2.0 | 👋 Shake gesture added to trigger layout inspection <br/> 🧰 CI configuration upgrade|
| 1.1.0 | 🏎️ Swift 5.0 and ABI stability in da house <br/> ✈️ New build system activated <br/> 🔌 Dropped iOS 10 support|
| 1.0.0 | 🎉 Release 1.0 <br/>👮 Test coverage added|
| 0.2.0 | Pre-release: Objective-C compatibility 👦 |
| 0.1.1 | Pre-release: fixed Lint warnings 👶 |
| 0.1.0 | Pre-release: initial version 🎬 |
Author
Ihor Savynskyi
✉️ wadedunk08@gmail.com
🌎 Twitter, LinkedIn
License
LayoutInspector is available under the MIT license. See the LICENSE file for more info.
