Xcode 6.4 iOS 图表 API 错误

Xcode 6.4 iOS Charts API Error

我对未解析的标识符有疑问 'dataPoints' 它在 for 循环中,我已经尽我所能,但由于我是 swift 的新手,我似乎找不到解决方案。

    var months: [String]!
func setChart(dataPoints: [String], values: [Double]) {
    barChartView.noDataText = "You need to provide data for the chart."

}

override func viewDidLoad() {
    super.viewDidLoad()

    months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
    let unitsSold = [20.0, 4.0, 6.0, 3.0, 12.0, 16.0, 4.0, 18.0, 2.0, 4.0, 5.0, 4.0]

    setChart(months, values: unitsSold)
    var dataEntries: [BarChartDataEntry] = []
    for i in 0..<dataPoints.count {
        let dataEntry = BarChartDataEntry(value: values[i], xIndex: i)
        dataEntries.append(dataEntry)
    }

    let chartDataSet = BarChartDataSet(yVals: dataEntries, label: "Units Sold")
    let chartData = BarChartData(xVals: months, dataSet: chartDataSet)
    barChartView.data = chartData

您在 for 循环中使用了 dataPoints,但 viewDidLoad() 的范围内没有这样的变量。

在您的评论中,您提到在函数 setChart() 中声明了一个 dataPoints,但这是该函数的局部声明,不适用于其他函数。

从你的代码来看,你应该为 for 循环使用 months

关于这一点,您可能打算在 for 循环中创建 BarChartDataEntry 对象时使用 unitsSold 而不是 values