ODUIThreadGuard
ODUIThreadGuard is a guard to help check if you make UI changes not in main thread.
As Xcode 9 embedded this function into Xcode, there is no reason to maintain this project in the feature, Happy Coding.
ODUIThreadGuard is a guard to help check if you make UI changes not in main thread. Highly recommend you add this file to your project as early as possible.
Features
- Passive implementation
- Throw an assertion if setNeedsDisplay, setNeedsLayout, or setNeedsDisplayInRect: is called for instantiation of any UIView
- Get the thread stack to help you locate where you make the mistake
Usage
No matter which way you use ODUIThreadGuard, no need to import any files, it is a extension of UIView, so it will work automatically.
CocoaPods
You can use CocoaPods to install ODUIThreadGuard
by adding it to your Podfile
:
platform :ios, '8.0'
use_frameworks!
pod 'ODUIThreadGuard'
Then drop ODUIThreadGuard.swift into your porject.
Carthage
Create a Cartfile
that lists the framework and run carthage update
. Follow the instructions to add $(SRCROOT)/Carthage/Build/iOS/YourLibrary.framework
to an iOS project.
github "olddonkey/ODUIThreadGuard"
Manually
- Download and drop
ODUIThreadGuard.swift
in your project. - Congratulations!
You can change the pre compile flag to change the setting, in default, this only runs in DEBUG mode, so won't affect users in Release.
Requirements
- iOS 8.0+
- Swift 3
The main development of ODUIThreadGuard is based on Swift 3.
Contact
Follow and contact me through email: [email protected]. If you find an issue, just open a ticket on it. Pull requests are warmly welcome as well.
License
ODUIThreadGuard is released under the MIT license. See LICENSE for details.