Pakete, Repositories und App-Kategorien suchen

Cover von reorderable_grid
Paketdetailsv1.0.13

reorderable_grid

Eine vollständige Implementierung einer umsortierbaren Grid, ähnlich der nativen umsortierbaren Liste von Flutter.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
14.200
Likes
136
Pub-Punkte
150

Paket installieren

flutter pub add reorderable_grid

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Ein Flutter-Paket, das ein voll funktionsfähiges, umsortierbares Raster bereitstellt, sodass Benutzer Rasterelemente per Ziehen und Ablegen dynamisch neu anordnen können. Inspiriert von Flutter’s nativem ReorderableListView unterstützt es alle wichtigen Plattformen wie Android, iOS, Web, macOS, Windows und Linux. Das Raster gewährleistet flüssige Animationen und verarbeitet Touch-Gesten effizient, wodurch es ideal für anpassbare Layouts wie Dashboards, Fotogalerien oder Aufgabenpläne ist. Es lässt sich nahtlos in bestehende Flutter-Anwendungen integrieren und bietet eine einfache API zur Anpassung.

Anwendungsfälle

  • Anpassbare Dashboard-Layouts
  • Foto- oder Medien-Galerie neu anordnen
  • Umbenennung der Aufgaben- oder Karten-basierten Benutzeroberfläche
  • Benutzerdefinierte Widget-Anordnungen
  • Interaktive, gitterbasierte Datenverwaltung

Hauptmerkmale

  • Drag-and-Drop-Umordnung
  • Plattformübergreifende Kompatibilität
  • Glatte Animationsübergänge
  • Flexible Elementanpassung
  • Eingebaute Gestenverarbeitung

Geeignet für

  • Entwickler, die interaktive Gitter-Schnittstellen erstellen
  • Apps, die eine benutzergetriebene Layoutanpassung erfordern
  • Projekte mit dynamischer Inhaltsoptimierung
  • Designer, die intuitive UI-Interaktionen wünschen
  • Flutter-Anwendungen für mehrere Plattformen

Hinweise

  • Erfordert sorgfältige Behandlung der Zustandsverwaltung
  • Kann die Leistung bei großen Datensätzen beeinträchtigen
  • Touch-Ziele erfordern angemessene Abstände und Paddings
  • Eingeschränkte integrierte Stiloptionen
  • Nicht für extrem hohe Elementanzahlen optimiert

Original-README

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

:white_square_button: Reorderable Grid

Pub Version Likes Pub points Pub codecov

A full reorderable grid implemention similar to Flutters Reorderable_List. with full ReorderableGridView, ReorderableGrid and SliverReorderableGrid implementations

gif showing basic usage

:hammer: How it works

ReorderableGridView is a drop in replacement for the existing GridView and adds an onReorder callback that provides the original and new index of the reordered item.

/// create a new list of data
final items = List<int>.generate(40, (index) => index);

/// when the reorder completes remove the list entry from its old position
/// and insert it at its new index
void _onReorder(int oldIndex, int newIndex) {
setState(() {
    final item = items.removeAt(oldIndex);
    items.insert(newIndex, item);
});
}

@override
Widget build(BuildContext context) {
return MaterialApp(
    home: Scaffold(
      body: ReorderableGridView.extent(
        maxCrossAxisExtent: 250,
        onReorder: _onReorder,
        childAspectRatio: 1,
        children: items.map((item) {
          /// map every list entry to a widget and assure every child has a 
          /// unique key
          return Card(
            key: ValueKey(item),
            child: Center(
            child: Text(item.toString()),
            ),
          );
        }).toList(),
      ),
    ),
);
}

ReorderableGrid provides all the constructors and parameters the normal GridView has. The package also includes:

  • ReorderableGridView, which is a prebuild Material-ish implementation of the grid.
  • ReorderableGrid, A barebones widget that allows you to customize the grid however you want
  • SliverReorderableGrid, a reorderable grid sliver for custom scroll implementations

Documentation

You can find all features and fuctionality documented here

:wave: Get Involved

If this package is useful to you please :thumbsup: on pub.dev and :star: on github. If you have any Issues, recommendations or pull requests I'd love to see them!

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden