我已经成功实现了SCICharts
个实时数据,就像官方ECGLiveMonitoring
上的SCICharts
示例一样。我在UIScrollView
中添加了9个图表。一切正常。问题是,当我滚动ScrollView时,它将停止在SCICharts
上绘制,而在滚动停止后,它将再次开始绘制。
所有数据都来自连接的Socket,并且在 35.12 毫秒后调用了一个用于更新图表数据的函数。
我发现要在滚动时更新UI,我们需要将Timer添加到RunLoop 因此,我在“时间”功能中添加了“跟随行”。
添加一行后,我在代码中添加了“ print”语句,用于显示数据来自套接字。
我可以很好地使用print语句,但是直到滚动停止时才更新图表。
if _timer == nil {
_timer = Timer.scheduledTimer(timeInterval: timeInteval, target: self, selector: #selector(drawData), userInfo: nil, repeats: true)
//The line i added in my code
RunLoop.current.add(_timer, forMode: .tracking)
} else {
_timer.invalidate()
_timer = nil
}
}```