IBAnimatable

Design and prototype customized UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable.

MIT License

Stars
8.7K
Committers
46

Bot releases are visible (Hide)

IBAnimatable - 2.4

Published by JakeLin over 8 years ago

Release 2.4 has added some Animatable UI elements and fixed some small bugs.

API breaking changes

None

Enhancements

  • New designable properties for UITextView: placeholder text and color #227
  • Add AnimatableSlider #228
  • Add AnimatableScrollView #232

Bugfixes

  • Use UIBezierPath to mask Circle, which can fix a bug when using Circle mask with borderSide #234
  • Fix a bug for Polygon mask when the width is longer than the height. #234
  • Fix a crash when the parameters number of Wave mask is not 3. #234
IBAnimatable - 2.3

Published by JakeLin over 8 years ago

This is a big release, we have added 52 transition animations. After this release transition animation APIs are stable.

We also fixed some bugs and added some designable features.

Great thanks to @tbaranes who ported all transitions from VCTransitionsLibrary and added parameters support for some transition animators.

API breaking changes

  • Change PanFromLeft, PanFromRight, PanFromTop, PanFromBottom, PanHorizontally and PanVertically to Pan(Left), Pan(Right), Pan(Top), Pan(Bottom), Pan(Horizontal) and Pan(Vertical) for Pan gesture transition controller. #125
  • Refactor direction to fromDirection for system transition animators. Refactor TransitionFromDirection to TransitionDirection. #206
  • Refactor Fade, FadeIn and FadeOut to Fade(direction: TransitionDirection) in TransitionAnimationType. Use Fade(In) to replace FadeIn and use Fade(Out) to replaceFadeOut`.#209
  • Remove PresentFadeInSegue, PresentFadeInWithDismissInteractionSegue, PresentFadeOutSegue and PresentFadeOutWithDismissInteractionSegue, use PresentFadeSegue and PresentFadeWithDismissInteractionSegue instead. #209
  • Remove degree for SystemRotate since it only supports 90 degrees. #210

Enhancements

  • Add ScreenEdgePanInteractiveAnimator to support ScreenEdgePan(Left), ScreenEdgePan(Right), ScreenEdgePan(Top), ScreenEdgePan(Bottom), ScreenEdgePan(Horizontal) and ScreenEdgePan(Vertical) for ScreenEdgePan gesture transition controller. #125
  • Support multiple sides for border #168
  • Add ExplodeAnimator to support Explode transition animation. It supports parameters Explode(xFactor, minAngle, maxAngle), if no specified, the default values are Explode(10, -10, 10). #155
  • Add FoldAnimator to support Fold transition animation. It supports parameters Explode(direction, nbFolds), if no specified, the default values are Fold(Left, 2). #155
  • Add PortalAnimator to support Portal transition animation. It supports parameters Portal(direction, zoomScale), if no specified, the default values are Portal(Backward, 0.8). #155
  • Add NatGeoAnimator to support NatGeo transition animation. It supports only a direction NatGeo(direction), if no specified, the default values are NatGeo(Left). #155
  • Add Turn to support Turn transition animation. It supports only a direction Turn(direction), if no specified, the default values are Turn(Left). #155
  • Add CardsAnimator to support Cards transition animation. It supports parameters Cards(direction), if no specified, the default values are Cards(Forward). #155
  • Add FlipAnimator to support Flip transition animation. It supports parameters Flip(direction), if no specified, the default values are Flip(Left). Currently only support Flip(Left) and Flip(Right). #155
  • Add ContainerTransition to manage transition animations between two UIViewController in a container
  • Add AnimatableCollectionViewCell #167
  • Add PinchInteractiveAnimator to support Pinch(Close), Pinch(Open) for Pinch gesture transition controller. #125
  • Add SlideAnimator to support Slide transition animation. It supports parameters Slide(direction, fade), if no specified, the default values are Flip(Left). #155
  • Add IBAnimatable Playground to demonstrate transitions and interactions. #204
  • Add Parallelogram mask. #207 - Parallelogram Mask support in Maskdesignable
  • Add popToRootViewController segue for poping to root ViewController of the NavigationController. #212

Bugfixes

  • Use weak for the viewController in InteractiveAnimator to avoid retain cycle.
  • Fixed the right image of SideImageDesignable #176
  • Fix a bug to support single side of border for AnimatableTextField #179
  • AnimatorFactory and all the ***Animators can now be used / instantiate outside of IBAnimatable
IBAnimatable - 2.2

Published by JakeLin over 8 years ago

API breaking changes

  • Change SystemPageCurlAnimator to SystemPageAnimator to support SystemPage(Curl) and SystemPage(UnCurl) transition animations.

Enhancements

  • AnimatableLabel now conforms BorderDesignable
  • New transition animations #126:
    • SystemSuckEffect
    • SystemRippleEffect
    • SystemMoveIn
    • SystemPush
    • SystemReveal
    • SystemRotate to support:
      • SystemRotate(90)
      • SystemRotate(90ccw)
      • SystemRotate(180)
      • SystemRotate(180ccw)
      • => Note: It seems that only SystemRotate(90) is working as expected. CATransition issues?
    • SystemCameraIrisAnimator to support:
      • SystemCameraIris
      • SystemCameraIris(HollowOpen)
      • SystemCameraIris(HollowClose)
  • Use framework in demo app #149

Bugfixes

  • Fix the sided borders issue #150
  • Fix the FromTop and FromBottom directions in system built-in animations #156
IBAnimatable - 2.1

Published by JakeLin over 8 years ago

API breaking changes

  • Remove MaskDesignable public methods (#101):
    • Remove maskCircle(), use view.maskType = String(MaskType.Circle) instead
    • Remove maskStar(_:), use view.maskType = "Star(6)" instead
    • Remove maskPolygon(), use view.maskType = String(MaskType.Polygon) instead
    • Remove maskTriangle(), use view.maskType = String(MaskType.Triangle) instead
    • Remove maskWave(_:_:_:), use view.maskType = "Wave(up, 16, 40)" instead
  • Improve the options in TransitionAnimationType enum. (#137)
    • Remove SystemCubeFromLeft, use SystemCube(Left)
    • Remove SystemCubeFromRight, use SystemCube(Right)
    • Remove SystemCubeFromTop, use SystemCube(Top)
    • Remove SystemCubeFromBottom, use SystemCube(Bottom)
    • Remove SystemFlipFromLeft, use SystemFlip(Left)
    • Remove SystemFlipFromRight, use SystemFlip(Right)
    • Remove SystemFlipFromTop, use SystemFlip(Top)
    • Remove SystemFlipFromBottom, use SystemFlip(Bottom)

Enhancements

  • Support Xcode 7.3 and Swift 2.2
  • Configurable mask polygon (sides) #112
  • Add SystemPageCurlAnimator to support SystemPageCurlFromTop and SystemPageCurlFromBottom transition animations #126
  • AnimatableLabel now conforms BorderDesignable and FillDesignable
  • Support Carthage 0.15.2 #131

Bugfixes

  • Fixed a bug that was making GradientDesignable not filling the dedicated frame #129
  • Fixed a bug that was making MaskDesignable not filling the dedicated frame
IBAnimatable -

Published by JakeLin over 8 years ago

API breaking changes

  • Remove DesignableViewController, use AnimatableViewController instead.

Enhancements

  • New IBAnimatable icon 🎊
  • Add AnimatableNavigationController to support custom Push and Pop transition animations
  • Add AnimatableViewController to support custom Present and Dismiss transition animations
  • Add SystemCubeAnimator to support SystemCubeFromLeft, SystemCubeFromRight, SystemCubeFromTop and SystemCubeFromBottom transition animations
  • Add SystemFlipAnimator to support SystemFlipFromLeft, SystemFlipFromRight, SystemFlipFromTop and SystemFlipFromBottom transition animations
  • Add FadeAnimator to support Fade, FadeIn and FadeOut transition animations
  • Add CALayerExtension to simplify CALayer animations with completion closure.
  • Add Navigator to manage Push and Pop transition animations
  • Add Presenter to manage Present and Dismiss transition animations
  • Add PresentFadeSegue, PresentFadeInSegue and PresentFadeOutSegue for Present transition with Fade animations
  • Add PresentFadeWithDismissInteractionSegue, PresentFadeInWithDismissInteractionSegue and PresentFadeOutWithDismissInteractionSegue for Present transition with Fade animations and getsture interactions.
  • Add PanInteractiveAnimator to handle Pan interaction for Dismiss and Pop
  • Demo App can experiment all transition animations (tap on "Forget Password" button to see)

Bugfixes

  • Fix potential crash when using GradientDesignable
  • Fix slideIn/Out animations on second screens (e.g. AirPlay)
IBAnimatable - 1.0

Published by JakeLin over 8 years ago

Initial release

IBAnimatable - 1.1

Published by JakeLin over 8 years ago

API breaking changes

  • Remove DesignableGradientView, use AnimatableView to configure gradient. #81 and #86

Enhancements

  • New animations: Rotate, RotateCCW #51
  • New masks: Star, Triangle, Polygon, Wave
  • SidebarImage now support right images
  • Predefined gradients #24
  • iOS8 support #89

Bugfixes

  • Fixed left gradient
  • Fixed slideOut / slideIn animations #46
IBAnimatable - 1.2

Published by JakeLin over 8 years ago

Enhancements

  • Swift Package Manager support. #5
  • Predefined flat colors. #71
  • Customise mask draw from interface builder #50 #8 #76:
    • Star(6) -> draw star mask with 6 sides.
    • Wave(up,50,100) -> draw a wave up mask with 50 as width, and 100 as offset.
  • Makes BorderDesignable usable in playground
  • Add MoveTo and MoveBy animations #74

Bugfixes

  • Fixed GradientDesignable rotation. #86
  • Fixed BorderDesignable after rotation.
  • Fixed mask star drawing bug. #95
  • Fixed the border color / width when used with a mask. #95
IBAnimatable - 1.0.1

Published by JakeLin almost 9 years ago

That makes the framework Carthage compatible. #6

Package Rankings
Top 7.13% on Swiftpackageindex.com
Top 0.66% on Cocoapods.org
Badges
Extracted from project README
Build Status Language CocoaPods Carthage Compatible Accio supported License
Related Projects