🤘 📈
ILG (InteractiveLineGraph)我被要求构建与Robinhood图表类似的界面,尽管有数千个iOS图表框架,但我决定自己从头开始构建,这样比修改别人的框架更有趣,也更省时。
免责声明
我为了工作构建了这个框架,虽然它满足了工作的要求,但许多区域还没有完善。
需要注意的事项(或如果你愿意可以添加或修复)
- 不太确定网格在哪里,可能还可以工作?
- 线下面曾经有一个渐变,但后来坏了,我没有修理。
- 线和点的动画不尽人意。
我计划工作的内容
- GraphViewInteractionDelegate将更加有用。
- 命名和其他一般清洁工作。
- 测试!
要求
- Swift 4.2
- iOS 10.0+
安装
☕️
CocoaPods您可以使用 CocoaPods 通过将其添加到您的 Podfile
中来安装 ILG
。
pod 'ILG'
使用
别忘了导入 ILG
。
import ILG
创建一个 InteractiveLineGraphView
实例,并将其添加到您的视图层次结构中,方法随心所欲。
let graphView = InteractiveLineGraphView()
然后调用 graphView.update(...)
,然后您就可以开始比赛了。
属性
在 InteractiveLineGraphView.swift
中,您会发现许多公开的属性,其中大多数是自解释的,但这里有一些可能不是。
lineMinY
和 lineMaxY
将强制设置 y 轴的上下界限,如果为 nil,则使用数据的 .min()
或 .max()
。
interactionDetailCard
是悬浮卡。它是完全可选的。如果您确实使用它,请确保保留当前卡片的引用,以便您可以通过 GraphViewInteractionDelegate
访问(也许在未来的版本中,我会拥有更复杂的协议)来更新它。
协议
GraphViewInteractionDelegate
将所有交互信息反馈给您。当我说“全部”时,我的意思就是它只会告诉您高亮索引已更改。稍有美化并不难,我会在将来这样做,但现在就是这样了。
🎸 🎸 🎸 )
Meta(l!!!Joey Nelson – @jedmondn – @jedmondn – [隐蔽邮箱地址]
在MIT许可证下分发。有关更多信息,请参阅LICENSE
。