我正在制作JBChart的条形图。我想将chartData更改为String。请帮我做。
这里是chartData代码: var chartData = [1,2,3]
然后我想从其他视图控制器的UILabel将其更改为String。
var chartData = [score1, score2, score3]
但是我总是得到这个错误(不能在这段代码中用类型' String')的类型CGFloat调用初始化器:
public func barChartView(_ barChartView: JBBarChartView!, heightForBarViewAt index: UInt) -> CGFloat {
return CGFloat(chartData[Int(index)])
}
答案 0 :(得分:3)
错误显然是CGFloat
没有接受String
作为参数的初始值设定项。您可以像第一次转换String
到Float
一样使用包裹,然后将Float
转换为CGFloat
。
public func barChartView(_ barChartView: JBBarChartView!, heightForBarViewAt index: UInt) -> CGFloat {
if let value = Float(chartData[Int(index)]) {
return CGFloat(value)
}
return 0
}
注意:请确保此String
的数字为值,否则会0
返回height
。