FLUTTER ECOSYSTEM

oaktreeapps/stacked_notification_cards

iOS 風格堆疊通知的 Flutter 實作。

stacked_notification_cards 專案封面
Stars
23
Forks
21
最近推送(UTC)
2024年12月9日
專案狀態
未封存
OakTree Apps LLC GitHub avatar
GITHUB Organization

OakTree Apps LLC ↗

AI/ML/Flutter/Snowflake

United States of America官方網站 ↗
語言DartHTMLSwiftKotlinObjective-C

技術主題

使用的依賴

依賴清單 4 項

原始 README

以下為英文專案原文快照,最新內容請造訪 GitHub。

展開 / 收合專案 README

stacked_notification_cards

A Flutter implementation of iOS style stacked notifications.

Features

  • Given notifications can be stacked one upon the other (iOS style)
  • Notifications can be expanded with fan animation.
  • Individual notification card can slide either left or right
  • Individual cards or the entire stack of cards can be dismissed via slide action.
  • It's possible to use multiple StackedNotificationCards within a Column.

Make sure to wrap StackedNotificationCards in SingleChildScrollView if using within a Column.

Install

In the pubspec.yaml of your flutter project, add the following dependency:

dependencies:
  stacked_notification_cards: <latest_version>

Add then following import:

import 'package:stacked_notification_cards/stacked_notification_cards.dart';

Getting Started

Example:

            StackedNotificationCards(
              shadow: [
                BoxShadow(
                  color: Colors.black.withOpacity(0.25),
                  blurRadius: 2.0,
                )
              ],
              type: 'Message',
              notifications: [..._listOfNotification],
              cardColor: Color(0xFFF1F1F1),
              padding: 16,
              headerTitle: Text(
                'Notifications',
                style: TextStyle(
                  fontSize: 24,
                  fontWeight: FontWeight.bold,
                ),
              ),
              headerShowLess: Text(
                'Show less',
                style: TextStyle(
                  fontSize: 18,
                  fontWeight: FontWeight.bold,
                  color: Colors.deepPurple,
                ),
              ),
              onTapClearAll: () {
                setState(() {
                  _listOfNotification.clear();
                });
              },
              headerClearAllButton: Icon(Icons.close),
              clearAllStacked: Text('Clear All'),
              clear: Text('clear'),
              view: Text('view'),
              onTapClearCallback: (index) {
                print(index);
                setState(() {
                  _listOfNotification.removeAt(index);
                });
              },
              onTapViewCallback: (index) {
                print(index);
              },
            ),

Demo

https://raw.githubusercontent.com/OakTree-Apps/stacked_notification_cards/main/assets/demo_record.gif

Contributions

Feel free to contribute to this project.

  • If you find a bug or want have a new feature request, please file an issue.
  • If you fixed a bug or implemented a feature, please send a pull request.