Pakete, Repositories und App-Kategorien suchen

Cover von avatar_stack
Paketdetailsv3.0.0

avatar_stack

Fortgeschrittene und agile Avatare-Stapel mit Einstellungen. Es ermöglicht, viele Avatare oder andere Widgets an einem kleinen Ort zu platzieren.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
7490
Likes
200
Pub-Punkte
155

Paket installieren

flutter pub add avatar_stack

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

AvatarStack ist ein Flutter-Paket, das die effiziente Anzeige mehrerer Avatare oder Widgets in einer kompakten, visuell ansprechenden Stapelansicht ermöglicht. Für Chat-Schnittstellen, Gruppenprofile und kooperative Apps konzipiert, unterstützt es anpassbare Abstände, Overflow-Handhabung und geschichtete Darstellung. Das Paket ist leichtgewichtig und äußerst anpassbar, sodass Entwickler dynamische Avatar-Gruppen mit minimalem Code integrieren können. Es funktioniert auf allen wichtigen Plattformen wie Android, iOS, Web, macOS, Windows und Linux.

Anwendungsfälle

  • Gruppenchat-Anzeigen
  • Teammitglied zeigt an
  • kooperative Projekt-Avatare
  • Clustern sozialer Medien-Nutzer
  • Profilgruppen-Vorschauen

Hauptmerkmale

  • anpassbare Avatar-Stapelung
  • Overflow-Behandlung mit Zähler-Badges
  • Unterstützung für jedes Widget, nicht nur Avatare
  • Reaktives Layout über Geräte
  • Glatte Schichtung und z-index-Steuerelement
  • Plattformübergreifende Kompatibilität

Geeignet für

  • Chat-Anwendungen
  • Team-Kollaborations-Tools
  • Soziale Netzwerk-Funktionen
  • Benutzerindikatoren im Dashboard
  • UIs mit dichter Benutzerdaten

Hinweise

  • Die Leistung kann bei sehr großen Avatar-Anzahlen abnehmen
  • Eingeschränkte integrierte Stiloptionen jenseits der grundlegenden Konfiguration
  • Erfordert manuelle Behandlung von Berührungseingaben bei übereinander liegenden Elementen
  • Nicht für extrem hohe Aktualisierungshäufigkeiten optimiert

Original-README

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

Avatar stack with animation

Build Status Coverage Status Pub

Avatar stack is used to visually represent users, places, and things in a limited space.

Example

Try Live Demo :-)

Example

import 'package:avatar_stack/animated_avatar_stack.dart';
import 'package:flutter/material.dart';

void main() => runApp(MaterialApp(
  home: Scaffold(
    body: Center(
      child: AnimatedAvatarStack(
        height: 50,
        avatars: [
          for (var n = 0; n < 15; n++) NetworkImage('https://i.pravatar.cc/150?img=$n'),
        ],
      ),
    ),
  ),
));

Features

Example

Restrict amount of items

Usually the stack avatar shows all items as possible but you can restrict it by, say, five items. Restrict amount of items

Alignment

By default the stack avatar has left alignment one can change it.

center alignment

center alignment

right alignment

right alignment

Coverage

You can set how avatars will coverage each others.

max coverage is set to 70%

max coverage is set to 70%

min coverage is set to minus 50%

The negative coverage will set space between items. min coverage is set to minus 50%

Any widget for stack

You can use any widget to stack not only avatars Any widget for stack

Indent of an info item

The additional space between an info item (if exists) and other items. Indent of an info item

Stack laying

The way to tile items.

the first item is at the top

Indent of an info item

the fifth item is at the top

Indent of an info item

One can use any widget for stacking. Apply WidgetStack widget for that. For example:

import 'package:avatar_stack/avatar_stack.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(const MaterialApp(home: Example7WidgetStack()));
}

class Example7WidgetStack extends StatelessWidget {
  const Example7WidgetStack({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    final settings = RestrictedPositions(
      maxCoverage: -0.1,
      minCoverage: -0.5,
      align: StackAlign.right,
    );
    return Column(
      children: [
        const Text(
          'Any widgets for stack:',
        ),
        const SizedBox(height: 10),
        SizedBox(
          height: 50,
          child: WidgetStack(
            positions: settings,
            stackedWidgets: [
              for (var n = 0; n < 12; n++)
                FlutterLogo(
                  style: FlutterLogoStyle.stacked,
                  textColor: Color(0xFF * 0x1000000 +
                      n * 10 * 0x10000 +
                      (0xFF - n * 10) * 0x100),
                ),
              const FittedBox(
                  fit: BoxFit.fitHeight,
                  child: Text('A',
                      style: TextStyle(height: 0.9, color: Colors.orange))),
              const FittedBox(
                  fit: BoxFit.fitHeight,
                  child: Text('B', style: TextStyle(height: 0.9))),
              const FittedBox(
                  fit: BoxFit.fitHeight,
                  child: Text('C',
                      style: TextStyle(height: 0.9, color: Colors.green))),
            ],
            buildInfoWidget: (surplus) {
              return Center(
                  child: Text(
                '+$surplus',
                style: Theme.of(context).textTheme.headline5,
              ));
            },
          ),
        ),
      ],
    );
  }
}

You can also use the example from github https://github.com/cyrax111/avatar_stack/tree/master/example

Ideas

If you have any ideas on how to enhance this package or have any concern, feel free to make an issue.

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden