snack_bar.1.dart 1.58 KB
Newer Older
1 2 3 4 5 6
// 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';

7
/// Flutter code sample for [SnackBar].
8

9
void main() => runApp(const SnackBarExampleApp());
10

11 12
class SnackBarExampleApp extends StatelessWidget {
  const SnackBarExampleApp({super.key});
13 14 15 16 17

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
18
        appBar: AppBar(title: const Text('SnackBar Sample')),
19
        body: const Center(
20
          child: SnackBarExample(),
21 22 23 24 25 26
        ),
      ),
    );
  }
}

27 28
class SnackBarExample extends StatelessWidget {
  const SnackBarExample({super.key});
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58

  @override
  Widget build(BuildContext context) {
    return ElevatedButton(
      child: const Text('Show Snackbar'),
      onPressed: () {
        ScaffoldMessenger.of(context).showSnackBar(
          SnackBar(
            action: SnackBarAction(
              label: 'Action',
              onPressed: () {
                // Code to execute.
              },
            ),
            content: const Text('Awesome SnackBar!'),
            duration: const Duration(milliseconds: 1500),
            width: 280.0, // Width of the SnackBar.
            padding: const EdgeInsets.symmetric(
              horizontal: 8.0, // Inner padding for SnackBar content.
            ),
            behavior: SnackBarBehavior.floating,
            shape: RoundedRectangleBorder(
              borderRadius: BorderRadius.circular(10.0),
            ),
          ),
        );
      },
    );
  }
}