bannzai/Gecco

Simply highlight items for your tutorial walkthrough, written in Swift

Swift

1,878

116 commits

updated Dec 22, 2024

See the code

README

Gecco

Pod Version Pod Platform Pod License

Simply highlight items for your tutorial walkthrough, written in Swift

Gecco means Moonlight in Japanese.

Demo

Usage

Basic

Basically instantiate a SpotlightViewController and present via UIViewController.present(_:animated:completion) and call SpotlightViewController.spotlight.appear(_:)` with SpotlightType.

import Gecco

class ViewController: UIViewController {
  func showSpotlight() {
    let spotlightViewController = SpotlightViewController()
    present(spotlightViewController, animated: true, completion: nil)
    spotlightViewController.spotlightView.appear(Spotlight.Oval(center: view.center, diameter: 100))
  }
}

Supported SpotlightType

Gecco provide some SpotlightType as default implemantation.

Oval

Oval displays a perfect circle.

spotlightViewController.spotlightView.appear(Spotlight.Oval(center: view.center, diameter: 100))
Rect

Rect is a rectangle drawn by specifying the width and height.

spotlightViewController.spotlightView.appear(Spotlight.Rect(center: view.center, size: CGSize(width: 200, height: 100)))
RoundedRect

RoundedRect is a rectangle with corner radius.

spotlightViewController.spotlightView.appear(Spotlight.RoundedRect(center: view.center, size: CGSize(width: 200, height: 100), cornerRadius: 8))

Advanced

Gecco publish some delegate methods for hook each events about SpotlightViewController and SpotlightView. If you want to write adavanced feature, you can write to define SpotlightViewControllerDelegate or SpotlightViewDelegate. See SpotlightViewControllerDelegate and SpotlightViewDelegate.

For example

// Hook events for SpotlightViewControllerDelegate
spotlightViewController.delegate = self

// Hook events for SpotlightViewDelegate
spotlightViewController.spotlightView.delegate = self

Example

Please refer to GeccoExample.

Installation

CocoaPods

pod 'Gecco'

Carthage

github "yukiasai/Gecco"

License

Gecco is released under the MIT license. See LICENSE for details.

bannzai/Gecco

Simply highlight items for your tutorial walkthrough, written in Swift

Swift

1,878

116 commits

updated Dec 22, 2024

See the code

README

Gecco

Pod Version Pod Platform Pod License

Simply highlight items for your tutorial walkthrough, written in Swift

Gecco means Moonlight in Japanese.

Demo

Usage

Basic

Basically instantiate a SpotlightViewController and present via UIViewController.present(_:animated:completion) and call SpotlightViewController.spotlight.appear(_:)` with SpotlightType.

import Gecco

class ViewController: UIViewController {
  func showSpotlight() {
    let spotlightViewController = SpotlightViewController()
    present(spotlightViewController, animated: true, completion: nil)
    spotlightViewController.spotlightView.appear(Spotlight.Oval(center: view.center, diameter: 100))
  }
}

Supported SpotlightType

Gecco provide some SpotlightType as default implemantation.

Oval

Oval displays a perfect circle.

spotlightViewController.spotlightView.appear(Spotlight.Oval(center: view.center, diameter: 100))
Rect

Rect is a rectangle drawn by specifying the width and height.

spotlightViewController.spotlightView.appear(Spotlight.Rect(center: view.center, size: CGSize(width: 200, height: 100)))
RoundedRect

RoundedRect is a rectangle with corner radius.

spotlightViewController.spotlightView.appear(Spotlight.RoundedRect(center: view.center, size: CGSize(width: 200, height: 100), cornerRadius: 8))

Advanced

Gecco publish some delegate methods for hook each events about SpotlightViewController and SpotlightView. If you want to write adavanced feature, you can write to define SpotlightViewControllerDelegate or SpotlightViewDelegate. See SpotlightViewControllerDelegate and SpotlightViewDelegate.

For example

// Hook events for SpotlightViewControllerDelegate
spotlightViewController.delegate = self

// Hook events for SpotlightViewDelegate
spotlightViewController.spotlightView.delegate = self

Example

Please refer to GeccoExample.

Installation

CocoaPods

pod 'Gecco'

Carthage

github "yukiasai/Gecco"

License

Gecco is released under the MIT license. See LICENSE for details.

Significant stargazers

Antoine van der Lee

3,230 followers · starred Jan 2016

Patrick Balestra

847 followers · starred Jan 2016

Siong

218 followers · starred Feb 2016

Philipp Berner

52 followers · starred Mar 2016