Flutter血管可视化插件vascular_flutter的使用

Flutter 血管可视化插件 vascular_flutter 的使用

Vascular Flutter 插件允许在用 Dart 编写的 Flutter 应用程序中使用 Vascular 的原生 iOS 和 Android API。

使用

  1. 在你的项目的 pubspec.yaml 文件中添加 vascular_flutter 依赖:
dependencies:
  vascular_flutter: ^2.1.0
  1. 在项目根目录下运行以下命令以安装 Flutter 包依赖:
$ flutter pub get
  1. 导入 Vascular 到你的项目:
import 'package:vascular_flutter/vascular_flutter.dart';

示例用法

// 导入包
import 'package:vascular_flutter/vascular.dart';

// 初始化应用
final vascular = initializeApp(
    APP_KEY, USER_ID);

// 创建用户
vascular.CreateUser();

// 获取收件箱
final inbox = await vascular.Inbox();

// 获取下一页收件箱(分页)
final nextInbox = await vascular.InboxNext();

// 通过消息 ID 获取消息
final message = await vascular.GetMessageById(inbox.messages[0].uuid);

// 标记为已读
vascular.ReadMessages(inbox.newMessagesIds);

// 打开消息
vascular.OpenMessages(inbox.readMessagesIds);

// 删除消息
vascular.DeleteMessage(inbox.messages[0].uuid);

// 添加标签
vascular.AddTags(["音乐", "运动"]);

// 删除标签
vascular.DeleteTags(["音乐", "运动"]);

// 列出标签
vascular.Tags();

List<InboxMessage> messages = inbox.messages;

@override
Widget build(BuildContext context) {
    return MaterialApp(
            home: Scaffold(
                appBar: AppBar(
                    title: Text(widget.title),
            ),
            body: Center(
                child: Column(
                    mainAxisAlignment: MainAxisAlignment.center,
                    children: [
                        TextButton(
                        onPressed: () {
                            vascular.InboxNext();
                        },
                        child: Text('点击获取下一页'),
                        ),
                        Text(_newInbox.toString(), style: Theme.of(context).textTheme.bodyText1),
                        Expanded(
                            child: ListView.builder(
                                itemCount: messages.length,
                                itemBuilder: (BuildContext ctxt, int index) {
                                return MessageCard(messages[index]);
                                }))
                    ],
                ),
            ),
        )
    );
}

多语言支持

final vascular = initializeApp(
    APP_KEY, USER_ID, [Language.enUs, Language.nb]);

final inbox = await vascular.Inbox();

// 当多种语言时
final messageEn = inbox.messages[0].message[Language.enUs.name];
print(messageEn?.title);

final messageNb = inbox.messages[0].message[Language.nb.name];
print(messageNb?.title);

// 当单一语言时
final message = vascular.GetMessage(inbox.messages[0].message);
print(message.title);

收件箱数据结构

{
    messages: [INBOX-MESSAGE]
    newMessagesIds: [STRING],
    readMessagesIds: [STRING],
    next: {
      createdAt: TIMESTAMP
      uuid: STRING
    },
    newInbox: INTEGER
}

收件箱消息数据结构

{
   "uuid": STRING,
   "status": INTEGER,
   "message":{
      "enUs":{
         "title": STRING,
         "body": STRING,
         "media":{
            "thumbnail": STRING,
            "image": STRING"
         },
         "actions":{
            "name": STRING,
            "value": STRING
         },
         "metadata":{
            "meta": STRING
         },
         "subTitle": STRING
         "language": LANGUAGE-ENUM
      }
   },
   "provider": PROVIDER-ENUM,
   "createdAt": STRING,
   "expdate": STRING
}

语言枚举

{
    enUs
    enUk
    nb
}

提供商枚举

{
    api
    sfmc
    dashboard
}

更多关于Flutter血管可视化插件vascular_flutter的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter血管可视化插件vascular_flutter的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


vascular_flutter 是一个用于在 Flutter 应用中实现血管可视化的插件。它可以帮助开发者在应用中展示血管结构,通常用于医学或健康相关应用。以下是如何在 Flutter 项目中使用 vascular_flutter 插件的基本步骤:

1. 添加依赖

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

dependencies:
  flutter:
    sdk: flutter
  vascular_flutter: ^1.0.0  # 请使用最新版本

然后运行 flutter pub get 来获取依赖。

2. 导入插件

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

import 'package:vascular_flutter/vascular_flutter.dart';

3. 使用 VascularWidget

VascularWidgetvascular_flutter 插件中用于展示血管结构的主要组件。你可以在你的应用中使用它来展示血管。

class VascularPage extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Vascular Visualization'),
      ),
      body: Center(
        child: VascularWidget(
          // 配置参数
          width: 300,
          height: 300,
          color: Colors.red,
          // 其他配置参数
        ),
      ),
    );
  }
}

4. 配置参数

VascularWidget 支持多个配置参数,允许你自定义血管的样式和行为。以下是一些常见的配置参数:

  • widthheight: 设置血管可视化组件的宽度和高度。
  • color: 设置血管的颜色。
  • lineWidth: 设置血管线条的宽度。
  • animationDuration: 设置血管动画的持续时间。
  • onTap: 设置点击血管时的回调函数。

5. 运行项目

完成上述步骤后,你可以运行你的 Flutter 项目,查看血管可视化的效果。

flutter run

6. 进一步自定义

如果你需要更复杂的血管结构或动画效果,可以参考 vascular_flutter 插件的文档或源码,进行进一步的自定义和扩展。

示例代码

以下是一个完整的示例代码,展示了如何在 Flutter 应用中使用 vascular_flutter 插件:

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

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

class MyApp extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Vascular Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: VascularPage(),
    );
  }
}

class VascularPage extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Vascular Visualization'),
      ),
      body: Center(
        child: VascularWidget(
          width: 300,
          height: 300,
          color: Colors.red,
          lineWidth: 2.0,
          animationDuration: Duration(seconds: 2),
          onTap: () {
            print('Vascular tapped!');
          },
        ),
      ),
    );
  }
}
回到顶部