Buscar pacotes, repositórios e categorias de apps

Capa de flip_card
Detalhes do pacotev0.7.0

flip_card

Um componente que fornece animação de carta virada. Pode ser usado para ocultar e exibir detalhes de um produto.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
86,2 mil
Curtidas
956
Pontos Pub
135

Instalar pacote

flutter pub add flip_card

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

FlipCard é um pacote Flutter que permite animações suaves de cartões virados, ideal para revelar informações adicionais, como detalhes do produto. Ele suporta rotação interativa com widgets personalizáveis para frente e verso, tornando-o perfeito para interfaces de usuário envolventes. O pacote funciona em todas as principais plataformas, incluindo Android, iOS, Web, macOS, Windows e Linux, garantindo comportamento consistente. Com integração simples via pub add, ele melhora a interatividade da IU sem complexidade.

Casos de uso

  • Revelar detalhes do produto
  • Cartões de aprendizagem interativa
  • Comparação antes/depois
  • Alternadores de perfil do usuário
  • Elementos de interface gamificados

Principais recursos

  • animação de giro suave
  • Conteúdo personalizável frente e verso
  • Suporte multiplataforma
  • Integração fácil com o Flutter
  • virada baseada em gestos
  • Velocidade e direção configuráveis

Indicado para

  • Aplicativos de comércio eletrônico
  • Aplicativos educacionais
  • Tutoriais interativos
  • Widgets do painel
  • Prototipagem de UI

Considerações

  • Pode afetar o desempenho em dispositivos de baixa gama
  • Requer um design cuidadoso para acessibilidade
  • Limitado a efeitos de virada 2D
  • Não adequado para transições complexas
  • A animação pode entrar em conflito com outros gestos

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

flip_card PRs Welcome Pub Package

A component that provides a flip card animation. It could be used for hiding and showing details of a product.

How to use

Import the package

import 'package:flip_card/flip_card.dart';
Default

Create a flip card as shown below. By default the card is touch controlled.

You can turn off touch control by setting flipOnTouch to false.

FlipCard(
  fill: Fill.fillBack, // Fill the back side of the card to make in the same size as the front.
  direction: Axis.horizontal, // default
  initialSide: CardSide.front, // The side to initially display.
  front: Container(
    child: Text('Front'),
  ),
  back: Container(
    child: Text('Back'),
  ),
)
Programmatically
Controller (Recommended)

To control the card programmatically, you can pass a controller when creating the card.

late FlipCardController _controller = FlipCardController();

@override
Widget build(BuildContext context) {
  return FlipCard(
    controller: _controller,
    front: ...,
    back: ...,
  );
}

void doStuff() {
  // Flip the card a bit and back to indicate that it can be flipped (for example on page load)
  _controller.hint(
    duration: const Duration(milliseconds: 400),
  );

  // Tilt the card a bit (for example when hovering)
  _controller.skew(0.2);

  // Flip the card programmatically
  _controller.flip();

  // Flip the card to front specifically
  _controller.flip(CardSide.front);

  // Flip the card without animation
  _controller.flipWithoutAnimation();
}
Global Key

You can also control the card via a global key as shown below.

This is not the recommended way.

final cardKey = GlobalKey<FlipCardState>();

@override
Widget build(BuildContext context) {
  return FlipCard(
    key: cardKey,
    flipOnTouch: false,
    front: Container(
      child: RaisedButton(
        onPressed: () => cardKey.currentState.toggleCard(),
        child: Text('Toggle'),
      ),
    ),
    back: Container(
      child: Text('Back'),
    ),
  );
}
Timed

You can auto-flip the widget after a certain delay without any external triggering.

FlipCard(
  fill: Fill.back, // Fill the back side of the card to make in the same size as the front.
  direction: Axis.horizontal, // default
  initialSide: CardSide.front, // The side to initially display.
  front: Container(
    child: Text('Front'),
  ),
  back: Container(
    child: Text('Back'),
  ),
  autoFlipDuration: const Duration(seconds: 2), // The flip effect will work automatically after the 2 seconds
)

Categorias

Repositório-fonte

Projetos que usam este pacote