Flutter动态交互卡片插件fluid_action_card的使用

Flutter 动态交互卡片插件 fluid_action_card 的使用

Fluid Action Card 插件

Fluid Action Card 是一个 Flutter 包,它包含预动画化的卡片(容器),具有流体动画功能。通过此插件,您可以轻松地向应用中添加用户自定义的卡片,并且这些卡片具有高度可定制的选项。您可以设置屏幕显示的卡片数量,而无需编写额外的代码来创建卡片或编写自己的动画机制。此外,您还可以在卡片中添加多个文本和图像,并且可以自定义卡片的颜色,使其呈现渐变效果,从而为现代前端开发提供完整的解决方案。

预览

示例

安装

您应该已经在系统中安装了 Flutter。

在终端中运行以下命令:

$ flutter pub add fluid_action_card

示例与用法

基本示例

class MyApp extends StatelessWidget {
  // 这个小部件是您的应用程序的根。
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Fluid Action card 显示',
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: FluidActionCard(
          color1: Colors.pinkAccent,
          color2: Colors.black45,
          backgroundcolor: Colors.grey[900]!,
          borderRadius1: BorderRadius.circular(20),
          borderRadius2: BorderRadius.circular(20),
          height: 400.0,
          width: 240.0,
          cardCount: 6,
          Position: 250.0,
          shadow: BoxShadow(
            color: Colors.black12,
            blurRadius: 10.0,
            spreadRadius: 0.2,
            offset: Offset(0, 3),
          ),
          ontap: () {},
        ),
      )
    );
  }
}

添加图片到动画卡片

首先,将依赖项资源导入到 pubspec.yaml 文件中:

flutter:
  uses-material-design: true
  assets:
    - assets/images/

然后,在您的主程序中添加图片:

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  // 这个小部件是您的应用程序的根。
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Fluid Action card 显示',
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: FluidActionCard(
          color1: Colors.greenAccent.shade400,
          color2: Colors.black12,
          backgroundcolor: Colors.grey[900]!,
          borderRadius1: BorderRadius.circular(20),
          borderRadius2: BorderRadius.circular(20),
          TextPosition_Top: 22.0,
          TextPosition_Down: 29.0,
          height: 400.0,
          width: 240.0,
          CardCount: 3,
          text1: Text(
            "Starts From",
            style: TextStyle(
              color: Colors.white,
              fontSize: 18.0,
              fontStyle: FontStyle.italic,
            ),
          ),
          text2: Text(
            "300",
            style: TextStyle(
              color: Colors.white,
              fontSize: 20.0,
              fontWeight: FontWeight.w700,
              letterSpacing: 2.0,
            ),
          ),
          Position: 250.0,
          shadow: BoxShadow(
            color: Colors.black12,
            blurRadius: 10.0,
            spreadRadius: 0.2,
            offset: Offset(0, 3),
          ),
          assetimage: 'assets/images/Xbox.png',
          ontap: () {},
        ),
      )
    );
  }
}

更多关于Flutter动态交互卡片插件fluid_action_card的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter动态交互卡片插件fluid_action_card的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


fluid_action_card 是 Flutter 中一个用于创建动态交互卡片的插件。它允许开发者轻松地实现具有动画效果的卡片,并且可以响应用户的交互操作,如点击、滑动等。以下是如何使用 fluid_action_card 插件的基本步骤:

1. 添加依赖

首先,你需要在 pubspec.yaml 文件中添加 fluid_action_card 插件的依赖。

dependencies:
  flutter:
    sdk: flutter
  fluid_action_card: ^1.0.0  # 请根据实际情况使用最新版本

然后运行 flutter pub get 来安装依赖。

2. 导入插件

在你的 Dart 文件中导入 fluid_action_card 插件。

import 'package:fluid_action_card/fluid_action_card.dart';

3. 使用 FluidActionCard

FluidActionCard 是插件提供的主要组件,你可以通过它来创建动态交互卡片。

基本用法

FluidActionCard(
  onTap: () {
    // 处理卡片点击事件
    print('Card tapped!');
  },
  child: Container(
    padding: EdgeInsets.all(16.0),
    child: Text(
      'Hello, Fluid Action Card!',
      style: TextStyle(fontSize: 18.0),
    ),
  ),
);

在这个例子中,FluidActionCard 包裹了一个 Container,当用户点击卡片时,会触发 onTap 回调。

添加动画效果

FluidActionCard 提供了多种动画效果,你可以通过 animationType 属性来指定。

FluidActionCard(
  animationType: FluidAnimationType.scale,  // 缩放动画
  onTap: () {
    print('Card tapped!');
  },
  child: Container(
    padding: EdgeInsets.all(16.0),
    child: Text(
      'Card with Scale Animation',
      style: TextStyle(fontSize: 18.0),
    ),
  ),
);

FluidAnimationType 支持以下几种动画类型:

  • scale: 缩放动画
  • fade: 淡入淡出动画
  • slide: 滑动动画
  • rotate: 旋转动画

自定义动画持续时间

你可以通过 duration 属性来自定义动画的持续时间。

FluidActionCard(
  animationType: FluidAnimationType.rotate,
  duration: Duration(seconds: 2),  // 动画持续2秒
  onTap: () {
    print('Card tapped!');
  },
  child: Container(
    padding: EdgeInsets.all(16.0),
    child: Text(
      'Card with Rotate Animation',
      style: TextStyle(fontSize: 18.0),
    ),
  ),
);

处理长按事件

除了点击事件,你还可以处理长按事件。

FluidActionCard(
  onLongPress: () {
    // 处理长按事件
    print('Card long pressed!');
  },
  child: Container(
    padding: EdgeInsets.all(16.0),
    child: Text(
      'Long Press Me',
      style: TextStyle(fontSize: 18.0),
    ),
  ),
);

4. 完整示例

以下是一个完整的示例,展示了如何使用 FluidActionCard 创建一个简单的交互卡片。

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

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Fluid Action Card Example'),
        ),
        body: Center(
          child: FluidActionCard(
            animationType: FluidAnimationType.scale,
            duration: Duration(seconds: 1),
            onTap: () {
              print('Card tapped!');
            },
            child: Container(
              padding: EdgeInsets.all(16.0),
              child: Text(
                'Tap Me!',
                style: TextStyle(fontSize: 18.0),
              ),
            ),
          ),
        ),
      ),
    );
  }
}
回到顶部