• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 运行时与 MPAndroidChart 的用户交互

[复制链接]
菜鸟教程小白 发表于 2022-12-12 21:27:32 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

首先我应该说 MPAndroidChart 很棒,你引入了一些功能和自定义,这让它真的很酷。

我希望添加与 MPAndroidChart 的用户交互,

我的要求是:

在组合图表(折线图和气泡图)中,我希望用户在 MPAndroidChart 的 x,y 坐标空间中拖动和移动数据点。

我希望用户拖动显示的数据, 这个怎么实现,可以分哪个类来实现这个。



Best Answer-推荐答案


为图形数据添加交互性 - 你需要一个带有平移手势的 View

需要继承CombinedChartView、LineChartRenderer、BubbleChartRenderer

创建渲染器对象,-这个渲染器对象需要被在CombinedChartView中创建的渲染器替换,因此我们将它子类化并用我们的子类版本的渲染器对象替换。

在我们的CombinedChartView(子类)中覆盖数据变量的getter,setter,因此在分配数据时,我们使用Pan手势创建一次UIView,在UIView中引用它对应的ChartDataEntry,因此在UIView的Pan处理函数中我们改变这个DataEntry的xIndex等并调用setNeedsDisplay。(UIView的框架位置还不知道,保持原点)

在我们的 Renderer 类(LineChartRenderer 或 BubbleChartRenderer 的子类)中覆盖 DrawDataSet 函数 - 这是实际绘图发生的地方,这是我们可以获得 UIView 的确切 x、y 坐标的地方,我们最终设置在 CombinedChartView 中创建的 View 的框架位置。

就是这样,当我们平移 UIView 时, View 会平移并依次移动 ChartDataEntry 的 xIndex

关于ios - 运行时与 MPAndroidChart 的用户交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38563119/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap