我使用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