我ios-chart
用来展示我建立的日历。我目前正在LineChart
用来绘制我的数据,并在一张图表中为一年中的每一天绘制 1 个点。所以我在一张图表中绘制了 365 个点。绘制它需要大约 1 秒钟。这不是一个大问题,除了我将日历设置为,一旦将其滚动到外部然后再次滚动回来(因此单元格被重绘)TableViewCell
,这将导致非常糟糕的滚动。即使在 iPhone 6 上也要花这么长时间才能画出 400 分,这感觉很奇怪。我可能在这里做错了什么?TableViewCell
ContentView
我的图表设置代码:
lineChart.descriptionText = ""
lineChart.drawGridBackgroundEnabled = false
lineChart.userInteractionEnabled = false
lineChart.xAxis.drawAxisLineEnabled = false
lineChart.xAxis.drawGridLinesEnabled = false
lineChart.xAxis.drawLabelsEnabled = false
lineChart.drawBordersEnabled = false
lineChart.leftAxis.enabled = false
lineChart.rightAxis.enabled = false
lineChart.legend.enabled = false
lineChart.contentMode = .ScaleAspectFill
var xVals = [String]()
var dataSet = LineChartDataSet(yVals: [ChartDataEntry]())
for (index, value) in enumerate(plotData){
dataSet.addEntry(ChartDataEntry(value: Float(value), xIndex: index))
xVals.append("\(index)")
}
dataSet.setColor(Colors.whiteColor())
dataSet.lineWidth = 1.0
dataSet.circleRadius = 0.0
dataSet.drawCirclesEnabled = false
dataSet.drawValuesEnabled = false
dataSet.drawFilledEnabled = true
dataSet.fillColor = Colors.whiteColor()
dataSet.fillAlpha = 0.1
dataSet.valueTextColor = Colors.whiteColor()
lineChart.data = LineChartData(xVals: xVals, dataSet: dataSet)
每次创建(或重用)单元格时都会执行上面的代码。有任何想法吗?