Icon morphing animation in mobile app

NOVASOLUTIONS.TECHNOLOGY is engaged in the development, support and maintenance of iOS, Android, PWA mobile applications. We have extensive experience and expertise in publishing mobile applications in popular markets like Google Play, App Store, Amazon, AppGallery and others.
Development and support of all types of mobile applications:
Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Showing 1 of 1 servicesAll 1735 services
Icon morphing animation in mobile app
Medium
from 1 business day to 3 business days
FAQ
Our competencies:
Development stages
Latest works
  • image_mobile-applications_feedme_467_0.webp
    Development of a mobile application for FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Development of a mobile application for XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Development of a mobile application for RHL
    1052
  • image_mobile-applications_zippy_411_0.webp
    Development of a mobile application for ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Development of a mobile application for Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Development of a mobile application for the FLAVORS company
    445

Icon Morphing Animation Implementation in Mobile Apps

Button "play → pause" with smooth icon transition, hamburger menu transforming to X, heart icon that "jumps" on tap—these aren't decoration. They're feedback that reduces cognitive load. Users don't read captions; they perceive state through shape.

Technical Approaches by Platform

On iOS, icon morphing is implemented via CAShapeLayer and path animation. Two UIBezierPath objects must have equal control points—otherwise Core Animation can't interpolate and produces "collapse to point" artifacts. Most common mistake: designer exports play icon with 3 points, pause with 4.

let morphAnimation = CABasicAnimation(keyPath: "path")
morphAnimation.fromValue = playPath.cgPath
morphAnimation.toValue = pausePath.cgPath
morphAnimation.duration = 0.25
morphAnimation.timingFunction = CAMediaTimingFunction(name: .easeInEaseOut)
shapeLayer.add(morphAnimation, forKey: "morphing")
shapeLayer.path = pausePath.cgPath

For complex icons with mismatched control point counts, use CGPath interpolation through intermediate keyframe or Lottie library—it handles all the math.

On Android, use AnimatedVectorDrawable with <animated-vector> and <objectAnimator> on pathData. Android Studio supports SVG import with auto-normalization, but complex shapes sometimes break point compatibility. Verify via PathParser.createPathFromPathData and manual audit in vector editor.

In Flutter, two options: CustomPainter with Path.lerp for simple shapes or Lottie for complex ones. Path.lerp requires equal vertex count—same issue. For icons with different topology (star ↔ circle), use MorphableShape from morphable_shape package or intermediate keyframe states.

Lottie as Universal Tool

When morphing is more complex than play/pause—icon transitions through 3–4 states with overlapping elements—the right path: designer creates animation in After Effects or Rive, exports to .lottie / .json, we play via lottie-ios / lottie-android / lottie-flutter. No math in code, full design fidelity.

Important Lottie nuance: LottieAnimationView.setMinAndMaxProgress(0f, 0.5f) plays only first half (A→B), setMinAndMaxProgress(0.5f, 1f) plays reverse (B→A). Standard pattern for dual-state icons.

What's Included

Receive SVG icons or Lottie file from designer. If SVG—normalize paths (equal point count), convert for target platform. Implement animation with consistent timing. Add haptic feedback where appropriate. Check with slow animations and accessibility Reduce Motion mode.

Timeline: 1–3 days depending on icon count and transition complexity.