我使用ios-chart
来呈现我创建的日历。我目前使用LineChart
来绘制我的数据,并在一个图表中绘制一年中每一天的1点。所以我有365点绘制在一张图表中。它需要1秒钟来绘制它。这不是一个大问题,除了我的日历为TableViewCell
,一旦TableViewCell
在ContentView
之外滚动,然后再次滚动(因此单元格被重绘),这将导致非常黑客的滚动。感到奇怪的是,即使在iPhone 6上也需要花费很长时间才能获得400分。我可能在这里做错了什么?图表iOS-charts减慢我的应用程序
我的设置代码:
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)
上述代码被每个小区被创建(或重复使用)的时间内完成。有任何想法吗?
您是否尝试过在[工具] [时间模式](https://developer.apple.com/library/ios/documentation/AnalysisTools/Reference/Instruments_User_Reference/TimeProfilerInstrument/TimeProfilerInstrument.html)(https://开头开发商.apple.com /库/ IOS /文档/ DeveloperTools /概念/ InstrumentsUserGuide /简介/ Introduction.html)? – Mats
@Mats以前从未使用过。谢谢,找到了瓶颈:)!与ios-charts无关。根据MVC, – ClockWise