// Copyright 2014 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/material.dart'; /// Flutter code sample for [AnimatedPadding]. void main() => runApp(const AnimatedPaddingExampleApp()); class AnimatedPaddingExampleApp extends StatelessWidget { const AnimatedPaddingExampleApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( appBar: AppBar(title: const Text('AnimatedPadding Sample')), body: const AnimatedPaddingExample(), ), ); } } class AnimatedPaddingExample extends StatefulWidget { const AnimatedPaddingExample({super.key}); @override State createState() => _AnimatedPaddingExampleState(); } class _AnimatedPaddingExampleState extends State { double padValue = 0.0; void _updatePadding(double value) { setState(() { padValue = value; }); } @override Widget build(BuildContext context) { return Column( mainAxisAlignment: MainAxisAlignment.center, children: [ AnimatedPadding( padding: EdgeInsets.all(padValue), duration: const Duration(seconds: 2), curve: Curves.easeInOut, child: Container( width: MediaQuery.of(context).size.width, height: MediaQuery.of(context).size.height / 5, color: Colors.blue, ), ), Text('Padding: $padValue'), ElevatedButton( child: const Text('Change padding'), onPressed: () { _updatePadding(padValue == 0.0 ? 100.0 : 0.0); }), ], ); } }