Code Monkey home page Code Monkey logo

tinyconsole's Introduction

 text

TinyConsole

Platform iOS

Swift 3 compatible

Carthage compatible

License MIT

A tiny log console to display information while using your iOS app. Written in Swift 3.

Usage

Pass your App-ViewController as a rootViewController parameter to TinyConsole to create the TinyConsoleController.

TinyConsole.createViewController(rootViewController: MyMainViewController())

Actions

// Print message
TinyConsole.print("hello")

// Print messages any color you want 
TinyConsole.print("green text", color: UIColor.green)

// Print a red error message 
TinyConsole.error("something went wrong")

// Print a marker for orientation
TinyConsole.addMarker()

// Clear console
TinyConsole.clear()

// Set root view controller
TinyConsole.set(rootViewController: MyViewController())

Calling TinyConsole.set(rootViewController:) will change the rootViewController of TinyConsoleController but hold the console content and gesture configurations, which means the text and gesture recognizers of the console view will remain the same.

Gestures

By default, the gestures is configured as follows:

  • Swipe from Left to Right: Add marker
  • 2 Finger Tap: Add custom log entry
  • 3 Finger Tap: Show Action Sheet to Clear Console and Send Mail
  • Shake to toggle the console view. If you’re using the Simulator, press βŒƒ ctrl-⌘ cmd-z.

To customize the gestures, specify withDefaultGestureConfiguration as false

TinyConsole.createViewController(rootViewController: MyMainViewController(), withDefaultGestureConfiguration: false)

and add your own gesture recognizers

let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(consoleTapped))
TinyConsole.addGestureRecognizer(tapGestureRecognizer)

Calling TinyConsole.useDefaultGestureConfiguration() will remove all gesture recognizers from console view and add the default gesture recognizers.

Implementation Example

Instead of

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    window = UIWindow(frame: UIScreen.main.bounds)
    window?.rootViewController = MainViewController()
    window?.makeKeyAndVisible()
    return true
}

write

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    window = UIWindow(frame: UIScreen.main.bounds)
    window?.rootViewController = TinyConsole.createViewController(rootViewController: MyMainViewController())
    window?.makeKeyAndVisible()
    return true
}

or checkout the example project included in this repository.

Demo

 text

Requirements

  • Xcode 8
  • Swift 3
  • iOS 8 or greater

Installation

Add this to your Cartfile:

github "Cosmo/TinyConsole"

Add this to your Podfile:

pod 'TinyConsole'

Manually

Just drag the source files into your project.

Hierarchy

 text

Contact

License

TinyConsole is released under the MIT License.

tinyconsole's People

Contributors

cosmo avatar ohitsdaniel avatar mrs- avatar kwongfung avatar readmecritic avatar sebastianvarela avatar

Watchers

James Cloos avatar Nguyen Do avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.