测试已测试 | ✗ |
语言语言 | Obj-CObjective C |
许可证 | MIT |
发布上次发布 | 2014年12月 |
由Joseph维护。
依赖 | |
CorePlot | ~> 1.5 |
AFNetworking | ~> 2.0 |
MBProgressHUD | ~> 0.8 |
MTDates | ~> 0.12 |
FontasticIcons | ~> 0.5 |
JCStockGraph是一种简单的方式来显示任何在Yahoo Finance API中列出证券的历史价格图表。以下是一些使用在Benzinga Stock Tracker应用中的图表的截图示例。
对于单个图表,请使用JCStockGraphController。对于包含每个时间范围的图的分页滚动视图,请使用JCStockGraphPageController。只需初始化控制器,设置选项,并将其视图作为子视图添加,如下所示:
self.graph = [[JCStockGraphPageController alloc] initWithTicker:@"AAPL"];
// or self.graph = [[JCStockGraphController alloc] initWithTicker:@"AAPL"]; for just one page
self.graph.view.frame = CGRectMake(0, 100, 320, 100);
self.graph.graphOffset = CGPointMake(10, 0);
self.graph.graphSize = CGSizeMake(300, 100);
self.graph.graphOptions = kGraphOptionSmoothGraph | kGraphOptionHideXAxis | kGraphOptionHideGrid;
self.graph.shouldAutoscroll = YES;
self.graph.shouldShowRotateHint = NO;
[self.view addSubview:self.graph.view];
// If this code all runs AFTER the superview is already loaded, add the line:
[self.graph reloadViews];
// This is because of an issue (listed below) with Core Plot dynamic resizing
注意:为了在分页控制器中启用平移和 zoom,我在分页控制器中禁用了滚动,转而使用位于图表下面的UISegmentedControl在图表之间切换。然后您只需在代码中使用scrollToRange:(JCStockGraphRange)newRange来切换图表。
查看示例项目和头文件以获取更多信息,以及完整的选项列表。要运行示例项目;克隆仓库,然后从示例目录运行pod install
。
值得一提的是,JCStockGraph有5个独立的依赖项,许多人认为对于一个相当小的控件来说,这是一个相当大的数量。至少最后两个(MTDates和FontasticIcons)可以很容易地用较少的努力进行替换,并且MBProgressHUD和AFNetworking也不是必需的。如果您决定用自定义代码替换其中的任何一个,欢迎向我提交 pull request!
非常欢迎提交拉取请求,同时也欢迎为发现的任何错误提出问题。
Joseph Constantakis,[email protected]
JCStockGraph遵循MIT许可证。有关更多信息,请参阅LICENSE文件。