Skip to content

A guard to help you check if you make UI changes not in main thread

License

Notifications You must be signed in to change notification settings

olddonkey/ODUIThreadGuard

Repository files navigation

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.

Carthage compatible CocoaPods Support Swift Version License MIT

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.

ScreenShot

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

  1. Download and drop ODUIThreadGuard.swift in your project.
  2. 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: olddonkeyblog@gmail.com. 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.

About

A guard to help you check if you make UI changes not in main thread

Resources

License

Stars

Watchers

Forks

Packages

No packages published