FLUTTER ECOSYSTEM

aloklearning/flutter_bounce

यह विजेट्स पर टैप करने पर बाउंस प्रभाव के लिए एक फ्लटर पैकेज है

flutter_bounce प्रोजेक्ट कवर
Stars
18
Forks
10
अंतिम पुश (UTC)
29 अग॰ 2023
प्रोजेक्ट स्थिति
सक्रिय
Alok Kumar GitHub avatar
GITHUB User

Alok Kumar ↗

💻 Senior Software Engineer | 👨‍💻 Learning new techs to make the software efficient and better | 🤔 Curious

Bengaluru, Karnataka, India
भाषाएँDartSwiftKotlinObjective-C

तकनीकी विषय

इस रिपॉज़िटरी के पैकेज

उपयोग की गई निर्भरताएँ

निर्भरता सूची 2 आइटम
  • flutter{"sdk":"flutter"}
  • flutter_testडेवलपमेंट{"sdk":"flutter"}

मूल README

यह अंग्रेज़ी मूल स्नैपशॉट है। नवीनतम सामग्री GitHub पर देखें।

README खोलें / बंद करें

flutter_bounce

pub_package git_license build

  • An efficient flutter package for an on-tap bounce animation on any flutter widgets
  • This package is an enhanced version of bouncing_widget.
  • Limitation of the bouncing_widget package:
    • It is not efficient for the widgets in Scroll Pages. We cannot scroll while having our fingers on the widget
    • The same issue would be found here

Advantages of flutter_bounce

  • Flutter bounce package will give you full freedom, to be used in on both the static and dynamic like scrolling pages.
  • Not sticky on scrolling, efficient bounce effect every where
  • With Duration, controll the bounce animation
  • It doesn't let the widget stay pressed when you scroll through, if we use the normal bounce effect with simply using the Flutter AnimationController and Tranform.scale() Widget.

Disclaimer

  • Widget flutter_widget is not the copy paste of bouncing_widget, it works differently. Without limitations, and the functionality works differently, based upon the duration, and not on the scaleFactor.
  • It doesn't have the scaleFactor at all, which is required in the widget
  • The code written in such a way that supports the flutter_bounce functionality. However, I have taken motivation from the limitations of the bouncing_widget

Usage

To use this plugin, add flutter_bounce as a dependency in your pubspec.yaml file.

Demo

This is how the Bounce Widget works when wrapped around the widget. The below shows Bounce being used in both the scenario:

  1. Static Page with Duration set facility
  2. Scroll Page with default Duration as 100 ms:
    • Horizontal Scroll
    • Vertical Scroll

https://raw.githubusercontent.com/aloklearning/flutter_bounce/HEAD/assets/simple-bounce.gif https://raw.githubusercontent.com/aloklearning/flutter_bounce/HEAD/assets/scroll-bounce.gif

Example

  • Import the library
import 'package:flutter_bounce/flutter_bounce.dart';
  • In order to use this package, we just need to wrap the content with the widget Bounce.
  • child, duration and onPressed is mandatory in the widget.
  • However, onPressed and duration can have null in the widget. By default duration is set to 100 milliseconds.
  • Please Note: Always pass the duration in milliseconds for best result
Bounce(
  duration: Duration(milliseconds: 110),
  onPressed: (){ YOUR_FUNCTION },
  child: YOUR_WIDGET
)

Acknowledgement

  • I would like to thank Levent Kantaroğlu for contributing in the recent null safety addition to the code, which will now help the community to use this package efficiently.
  • I would like to thank ThomasEcalle for the indirect motivation via his widget, to come up with an efficient work around, which will now be useful for our flutter community people