使用iOS图表API显示弹出窗口,并添加与值相关的注释

问题描述:

我正在学习使用iOS图表,我不确定是否应该提出一两个问题,首先我一直试图当用户点击一个值时创建一个弹出窗口。我一直在阅读ChartsDemo中的代码,但由于它在Objective-C中,我不太了解发生了什么,我一直在阅读关于此网站的一些问题,所以我添加了ChartViewDelegate,我也复制了BalloonMarker.swift文件进入我的项目,最后,我看到我需要添加chartValueSelected函数,但我不确定BalloonMarker是否应该添加到函数内部,或者在哪里?我的功能的代码如下所示:使用iOS图表API显示弹出窗口,并添加与值相关的注释

func chartValueSelected(chartView: ChartViewBase, entry: ChartDataEntry, dataSetIndex: Int, highlight: Highlight) { 

    let marker:BalloonMarker = BalloonMarker(color: UIColor.black, font: UIFont(name: "Helvetica", size: 12)!, textColor: UIColor.white, insets: UIEdgeInsets(top: 7.0, left: 7.0, bottom: 7.0, right: 7.0)) 
    marker.minimumSize = CGSize(width: 75.0, height: 35.0) 
    chartView.marker = marker 
} 

但它说BallonMaker是不明确的,没有更多的上下文。任何人都可以向我解释如何添加此功能?我的图表单独工作正常,所以它只是添加值(这是一个组合图表栏/线)。

第二件事是;我的数据来自包含Date(X值),Double(Y值)和注释(String)的结构,是否可以使用x和y值将弹出窗口内容添加到弹出窗口?

感谢

对于标记您需要添加标记在图表中没有选择的方法

请尝试添加以下代码和标记分配给您的图表对象。

let marker:BalloonMarker = BalloonMarker(color: UIColor.redColor(), font: UIFont(name: "Helvetica", size: 12)!, insets: UIEdgeInsets(top: 7.0, left: 7.0, bottom: 7.0, right: 7.0)) 
marker.minimumSize = CGSizeMake(75.0, 35.0) 
chartView.marker = marker 

希望这会有所帮助。

+0

解决,谢谢! – Enrique