Flutter Flushbar: примеры настраиваемой панели уведомлений с кодом

Flushbar — это пакет в среде Flutter, который предоставляет настраиваемую и гибкую панель уведомлений, которая может отображаться вверху или внизу экрана. Обычно он используется для отображения пользователю информационных сообщений, предупреждений или ошибок.

Вот несколько методов с примерами кода для использования Flushbar во Flutter:

Метод 1: базовая панель сброса

import 'package:flushbar/flushbar.dart';
import 'package:flutter/material.dart';
void showFlushbar(BuildContext context) {
  Flushbar(
    message: 'This is a basic Flushbar',
    duration: Duration(seconds: 3),
  )..show(context);
}

Метод 2: панель сброса с кнопкой действия

import 'package:flushbar/flushbar.dart';
import 'package:flutter/material.dart';
void showFlushbarWithAction(BuildContext context) {
  Flushbar(
    message: 'Flushbar with an action button',
    duration: Duration(seconds: 4),
    mainButton: FlatButton(
      onPressed: () {
        // Action to be performed
      },
      child: Text('UNDO'),
    ),
  )..show(context);
}

Метод 3. Настраиваемая панель отображения

import 'package:flushbar/flushbar.dart';
import 'package:flutter/material.dart';
void showCustomFlushbar(BuildContext context) {
  Flushbar(
    title: 'Custom Flushbar',
    message: 'This is a custom Flushbar',
    duration: Duration(seconds: 5),
    backgroundColor: Colors.blue,
    icon: Icon(
      Icons.info_outline,
      color: Colors.white,
    ),
    leftBarIndicatorColor: Colors.yellow,
  )..show(context);
}

Метод 4: Flushbar с анимацией

import 'package:flushbar/flushbar.dart';
import 'package:flutter/material.dart';
void showAnimatedFlushbar(BuildContext context) {
  Flushbar(
    message: 'Animated Flushbar',
    duration: Duration(seconds: 3),
    animationDuration: Duration(milliseconds: 500),
    flushbarStyle: FlushbarStyle.FLOATING,
    flushbarPosition: FlushbarPosition.TOP,
    forwardAnimationCurve: Curves.fastLinearToSlowEaseIn,
    reverseAnimationCurve: Curves.fastOutSlowIn,
    animationBuilder: (context, animation, child) => SlideTransition(
      position: Tween(
        begin: Offset(0.0, -1.0),
        end: Offset.zero,
      ).animate(animation),
      child: child,
    ),
  )..show(context);
}

Метод 5: Flushbar с видимостью наложения

import 'package:flushbar/flushbar.dart';
import 'package:flutter/material.dart';
void showFlushbarWithOverlayVisibility(BuildContext context) {
  Flushbar(
    message: 'Flushbar with overlay visibility',
    duration: Duration(seconds: 3),
    overlayBlur: 10,
    overlayColor: Colors.black45,
    showProgressIndicator: true,
  )..show(context);
}

Обратите внимание, что приведенные примеры кода являются всего лишь иллюстрациями и могут потребовать дополнительного импорта и изменений в зависимости от настроек вашего конкретного проекта Flutter.