flexi_kline 0.6.1 copy "flexi_kline: ^0.6.1" to clipboard
flexi_kline: ^0.6.1 copied to clipboard

A flexible Kline package project.

FlexiKline #

一个灵活和可定制的Flutter金融图表。

特性 #

  • 内置多种常用指标, 支持添加自定义指标.
  • 可定制化的指标样式与指标设置.
  • 支持全屏/横屏/主区图表宽高动态调整.
  • 可定制化的手势操作(惯性平移/缩放位置)
  • 支持多种平台(Android, iOS, Web, MacOs, Windows, Linux...).

Sample #

  1. Custom FlexiKlineConfiguration

实现IConfiguration接口.

/// FlexiKline配置接口
abstract interface class IConfiguration {
  /// FlexiKline初始或默认的主区的宽高.
  Size get initialMainSize;

  /// 获取FlexiKline配置
  /// 1. 如果本地有缓存, 则从缓存中获取.
  /// 2. 如果本地没有缓存, 根据当前主题生成一套FlexiKline配置.
  FlexiKlineConfig getFlexiKlineConfig();

  /// 保存[config]配置信息到本地; 通过FlexiKlineController调用.
  void saveFlexiKlineConfig(FlexiKlineConfig config);

  /// 自定义主区指标列表
  Iterable<SinglePaintObjectIndicator> customMainIndicators();

  /// 自定义副区指标列表
  Iterable<Indicator> customSubIndicators();
}

主题配置IFlexiKlineTheme

参考Demo实现: DefaultFlexiKlineConfiguration BitFlexiKlineConfiguration

  1. New FlexiKlineController
  controller = FlexiKlineController(
    configuration: configuration,
    logger: LoggerImpl(
      tag: "FlexiKline",
      debug: kDebugMode,
    ),
  );
  1. UpdateKlineData
/// 根据[request]切换[KlineData]数据源, 如果发生变更TimerBar.
flexiKlineController.switchKlineData(request, useCacheFirst: true);

/// 更新[request]指定的数据
flexiKlineController.updateKlineData(request, resp.data);

配置 #

FlexiKline完整配置.json #

更新....

TODO #

Reference #

Flutter 触控板手势

PR 31593:Mac 触控板手势macOS

13
likes
0
points
230
downloads

Publisher

unverified uploader

Weekly Downloads

A flexible Kline package project.

Homepage
Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

copy_with_extension, decimal, equatable, flutter, json_annotation

More

Packages that depend on flexi_kline