Pakete, Repositories und App-Kategorien suchen

Cover von card_stack_widget
Paketdetailsv0.1.6

card_stack_widget

Ein vertikales, wegzuschiebendes und anpassbares Kartenstapel für Flutter-Anwendungen

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
277
Likes
88
Pub-Punkte
160

Paket installieren

flutter pub add card_stack_widget

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Ein Flutter-Paket, das einen vertikalen Stapel abweisbarer Karten bereitstellt, wodurch Benutzer durch Hoch- oder Herunterschieben durch den Inhalt navigieren können. Jede Karte kann mit einzigartigen Layouts, Animationen und Verhalten angepasst werden. Ideal für interaktive Oberflächen wie Quizze, Produktpräsentationen oder Aufgabenlisten. Das Widget unterstützt mehrere Plattformen, darunter Android, iOS, Web, macOS, Windows und Linux, und gewährleistet eine konsistente Leistung über alle Geräte hinweg.

Anwendungsfälle

  • Interaktive Kartenbasierte Navigation
  • Produkt- oder Artikelentdeckungsschnittstellen
  • Quiz- oder Umfrageanwendungen
  • Aufgabenverwaltung mit Swipe-Aktionen
  • Inhaltsnavigation mit sanften Übergängen

Hauptmerkmale

  • Vertikales Kartenstapeln
  • Swipe-to-Dismiss-Gesten
  • Anpassbare Kartenansicht
  • Plattformübergreifende Kompatibilität
  • Eingebaute Animationsunterstützung
  • Erweiterbarer Ereignishandler

Geeignet für

  • Entwickler, die kartenbasierte Benutzeroberflächen erstellen
  • Apps, die Swipe-Interaktionen erfordern
  • Multiplattform-Flutter-Projekte
  • Interaktive Onboarding-Flows
  • Dynamische Inhaltpräsentation

Hinweise

  • Erfordert sorgfältige Behandlung von Gestenkonflikten
  • Kann die Leistung bei großen Kartenanzahlen beeinträchtigen
  • Die Anpassung erfordert Kenntnisse über Flutter-Layouts
  • Begrenzte integrierte Themen
  • Nicht für horizontale Stapel optimiert
  • Benötigt externe Abhängigkeiten für erweiterte Funktionen

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

📦 card_stack_widget

A vertical dismissible and customizable stack of cards for a Flutter application.

Usage

CardStackWidget requires a list of CardModel, in order to create a stack of cards. You can customize their swipe or dismiss orientation, change the scale or the position factor. You can also apply an opacity, that change on drag movement.

Below, you can find an example of the usage of CardStackWidget and CardModel:

CardStackWidget _buildCardStackWidget(BuildContext context) {
  final mockList = _buildMockList(context, size: 4);

  return CardStackWidget(
    opacityChangeOnDrag: true,
    swipeOrientation: CardOrientation.both,
    cardDismissOrientation: CardOrientation.both,
    positionFactor: 3,
    scaleFactor: 1.5,
    alignment: Alignment.center,
    reverseOrder: true,
    animateCardScale: true,
    dismissedCardDuration: const Duration(milliseconds: 150),
    cardList: mockList,
  );
}

/// Create a mock list of `CardModel` to use inside `CardStackWidget`
_buildMockList(BuildContext context, {int size = 0}) {
  final double containerWidth = MediaQuery
      .of(context)
      .size
      .width - 16;

  var list = <CardModel>[];
  for (int i = 0; i < size; i++) {
    var color = Color((Random().nextDouble() * 0xFFFFFF).toInt() << 0)
        .withOpacity(1.0);

    list.add(
      CardModel(
        backgroundColor: color,
        radius: 8,
        shadowColor: Colors.black.withOpacity(0.2),
        child: SizedBox(
          height: 310,
          width: containerWidth,
          child: Container(), // Whatever you want
        ),
      ),
    );
  }

  return list;
}

Preview

GIF example card widget 1 GIF example card widget 2

🚀 Supported properties

CardStackWidget:

  • cardList: List
  • scaleFactor: double
  • positionFactor: double
  • alignment: Alignment?
  • reverseOrder: bool
  • cardDismissOrientation: CardOrientation
  • swipeOrientation: CardOrientation
  • onCardTap: Function(CardModel)?
  • animateCardScale: Duration
  • dismissedCardDuration: bool
  • opacityChangeOnDrag: bool

CardModel:

  • key: Key?
  • shadowColor: Color
  • backgroundColor: Color
  • radius: Radius
  • border: BoxBorder?
  • child: Widget?
  • padding: EdgeInsets?
  • margin: EdgeInsets?
  • gradient: Gradient?
  • imageDecoration: DecorationImage?

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.