Need help with SYBlinkAnimationKit?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

shoheiyokoyama
126 Stars 15 Forks MIT License 178 Commits 5 Opened issues

Description

SYBlinkAnimationKit is a blink effect animation framework for iOS, written in Swift.

Services available

!
?

Need anything else?

Contributors list

# 10,154
carthag...
swift-3
swift3
cocoapo...
155 commits

Platform Carthage compatible Awesome Language GitHub license

SYBlinkAnimationKit is a blink effect animation framework for iOS, written in Swift :bowtie:

:eyes: Demo

There are 5 types of animation for component.

border

borderWithShadow

background

ripple

text

:octocat: Features

  • Animation like blink effect for
    UIKit
  • The 5 types of animation :
    border
    ,
    borderWithShadow
    ,
    background
    ,
    ripple
    ,
    text
  • Easily usable :stuckouttongueclosedeyes:
  • Customizable in any properties for animation
  • [x] Support Swift 3.0 :tada:
  • [x] Support
    @IBDesignable
    and
    @IBInspectable
    . you can change properties in Interface Builder(IB) inspector. then IB update your custom objects automatically.
  • [x] Compatible with Carthage

  • [x] SYButton

  • [x] SYLabel

  • [x] SYTextField

  • [x] SYView

  • [x] SYTableViewCell

  • [x] SYCollectionViewCell

Coming Soon - [ ] SYTextView - [ ] SYImageView

Demo App

Open

Example/SYBlinkAnimationKit.xcworkspace
and run
SYBlinkAnimationKit-Example
to see a simple demonstration.

To run the example project, run

pod install
from the Example directory first.

:largeorangediamond: Usage

First, Import SYBlinkAnimationKit in class.

swift
   import SYBlinkAnimationKit

SYBlinkAnimationKit is designed to be easy to use.

  1. Call the SYClass. for example,
    SYButton
    ,
    SYLabel
    ,
    SYTextField
    , etc.
  2. If you use custom animation, call animation method
    startAnimating()
    ,
    stopAnimating()

SYButton

   let button = SYButton(frame: CGRect(x: 40, y: 50, width: 300, height: 50 ))
   button.setTitle("Border Animation", forState: .normal)
   button.animationType = .border
   view.addSubview(button)

//Run Animation syButton.startAnimating() //End Animation syButton.stopAnimating()

Text Animation

Available Text Animation because of handleable text.

If you change text font size, name, you are supposed to call the `setFont()

    button
        .setFont(name: "ArialHebew", ofSize: 21)
        .startAnimating()

SYLabel

   let label = SYLabel(frame: CGRect(x: 40, y: 50, width: 300, height: 50 ))
   label.text = "Text Animation"
   label.labelTextColor =  .darkGray
   label.animationType = .text
   view.addSubview(label)

Text Animation

SYLabel
Available Text Animation because of handleable text.

If you set text color, you are supposed to set the

labelTextColor
property. To change text font, use font method as with
SYButton
.
    label
        .setFont(name: "ArialHebew", ofSize: 21)
        .startAnimating()

SYTableViewCell

Inherit

SYTableViewCell
. customize your
TableViewCell
in
UITableViewDataSource
.
class YourCell: SYTableViewCell {
    ...
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCellWithIdentifier("YourCell", forIndexPath: indexPath) as! YourCell
        cell.animationType = .background
        cell.startAnimating()
        return cell
    }

SYCollectionViewCell

Inherit

SYCollectionViewCell
. customize your
CollectionViewCell
in
UICollectionViewDataSource
.
class YourCell: SYCollectionViewCell {
    ...
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
        let cell = collectionView.dequeueReusableCellWithReuseIdentifier("YourCell", forIndexPath: indexPath) as! YourCell
        cell.animationType = .background
        cell.startAnimating()
        return cell
    }

SYTextField

SYTextField stop animation. when a touch. but you can control this behavior.

swift
   //The animation stop. when a touch. default is true
   syTextField.stopAnimationWithTouch = true

:wrench: Customize animation properties

Animation Type

If you just want to change the types of animation, you can customize

animationType
.
   // default is border
   var animationType: AnimationType

// Support 5 types of animation enum AnimationType: Int { case border case borderWithShadow case background case ripple case text }

inspectable

Set

animationAdapter
(with Integer) in place of
animationType
in
IB
.
  • border
    : 0
  • borderWithShadow
    : 1
  • background
    : 2
  • ripple
    : 3
  • text
    : 4

Animation Color

You can customize the properties of the color. These properties are inspectable.

   var animationBorderColor: UIColor
   var animationBackgroundColor: UIColor
   var animationTextColor: UIColor
   var animationRippleColor: UIColor

Animation Duration, Timing

You can customize

animationTimingFunction
,
animationDuration
.
   //default is linear
   var animationTimingFunction: SYMediaTimingFunction

enum SYMediaTimingFunction: Int { case linear case easeIn case easeOut case easeInEaseOut }

   //default is 1.5
   public var animationDuration: CGFloat

inspectable

Set

animationTimingAdapter
(with Integer) in place of
animationTimingFunction
in
IB
.
  • linear
    : 0
  • easeIn
    : 1
  • easeOut
    : 2
  • easeInEaseOut
    : 3

Customize Animatable Text

You can customize Animatable Text alignment. Support 9 types of alignment. Available

SYButton
,
SYLabel
now.
    var textAlignmentMode: TextAlignmentMode

enum TextAlignmentMode {
    case topLeft, topCenter, topRight
    case left, center, right
    case bottomLeft, bottomCenter, bottomRight
}

Whether animating or not

If SYClass is in middle of animation, this property is

true
swift
   public var isAnimating: Bool

:computer: Installation

CocoaPods

SYBlinkAnimationKit is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "SYBlinkAnimationKit"

Carthage

Add the following line to your

Cartfile
:
github "shoheiyokoyama/SYBlinkAnimationKit"

:pencil: Requirements

  • iOS 8.3+
  • Xcode 9.0+
  • Swift 3.2+

:coffee: Author

Shohei Yokoyama, [email protected]

:unlock: License

SYBlinkAnimationKit is available under the MIT license. See the LICENSE file for more info.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.