Flutter - Ripple Effect Last Updated : 04 Mar, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report In Flutter, the InkWell widget is used to perform ripple animation when tapped. This effect is common for all the app components that follow the material design guideline. A ripple animation in its simplest term can be understood as a black (default) bar at the bottom of an app that displays some data when a tap is done on the respective component of the application.Steps to implement inkwellStep 1 : Creating a simple widgetcreate a simple widget that has a button that can not interact with user: Dart Container( padding: EdgeInsets.all(12.0), color: Colors.green, child: Text( ' Button', style: TextStyle(color: Colors.white), ), ), To know more about container in flutter refer this article: Container class in FlutterStep 2 : Using InkWell widgetNow wrap the widget that we just created above with the InkWell widget as shown below: Dart InkWell( onTap: () { ScaffoldMessenger.of(context).showSnackBar(SnackBar( content: Text('Hello Geeks!'), )); }, child: Container( padding: EdgeInsets.all(12.0), color: Colors.green, child: Text( ' Button', style: TextStyle(color: Colors.white), ), ), ); To know more about SnackBar in flutter refer this article: Flutter – SnackbarNow let's build the complete app from the below-given source code.Complete Source Code (main.dart) Dart import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { final title = 'GeeksForGeeks'; return MaterialApp( debugShowCheckedModeBanner: false, title: title, home: MyHomePage(title: title), ); } } class MyHomePage extends StatelessWidget { final String title; MyHomePage({super.key, required this.title}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(title), backgroundColor: Colors.green, foregroundColor: Colors.white, ), body: Center(child: MyButton()), ); } } class MyButton extends StatelessWidget { @override Widget build(BuildContext context) { return InkWell( onTap: () { ScaffoldMessenger.of(context).showSnackBar(SnackBar( content: Text('Hello Geeks!'), )); }, child: Container( padding: EdgeInsets.all(12.0), color: Colors.green, child: Text( ' Button', style: TextStyle(color: Colors.white), ), ), ); } } Output: Comment More infoAdvertise with us Next Article Flutter - Ripple Effect D ddeevviissaavviittaa Follow Improve Article Tags : Flutter Flutter Flutter-Widgets Similar Reads Flutter - TypeWriter Text Effect In this Flutter article, let's learn how to create Animated TypeWritting Effect on a flutter Text Widget. The typewriter effect is a kind of animation where the text appears to be typed out letter by letter. This is often used in games, movies, videos, or in certain apps where you want the userâs at 7 min read Flutter - Inner Shadow Effect If you want to give the inner shadow effect in your flutter application you can use the Box shadow property of the Box Decoration. A sample image is given below to get an idea about what we are going to do in this article.  How to use? You can use the Box shadow property of the container to make the 3 min read Flutter - Add Gradient Effect to ListTile In Flutter, a gradient effect is a visual effect that smoothly transitions between two or more colours, creating a gradual blend or progression of colours. To add a gradient background to a ListTile in Flutter, you can wrap the ListTile with a Container or another widget that supports gradients, suc 3 min read Flutter - Empty Widget Empty widget is the flutter widget that is mainly used to notify the user about some event, Like if we are fetching the data from the API or From the database, There may be a case when API returns the null at that moment we can show the empty widget. Also If there is no user internet connection we c 4 min read Flutter - Detecting Long Press Effect Detecting long press effects in Flutter involves the use of the GestureDetector or InkWell widget to detect the Long Press. it's common to implement long-press detection to provide users with additional functionalities or visual feedback. The long-press event is triggered when a user holds down a pa 4 min read Like