I’ve been trying to get SciCharts and the IOS UIScrollview to work together and have been running into a couple of issues.
The main storyboard has 7 SciChart surfaces plotting realtime data embedded inside a single UI scrollview controller.
1) Charts don’t render when scrollview is actively scrolling
Everything works fine during normal operation and we don’t try to scroll.
Once a finger is placed on the screen, the SciCharts surface stops redrawing. This could be due to the fact that the ‘Scroll’ thread is handled in the UITouch thread and perhaps has higher priority. I don’t know if there is anyway to change the priority of the render routine. I can confirm that everything until ‘Update Data’ and Chart.InvalidateElement() is being called during a scroll action.
2) Scrolling is disallowed when Chart surface is as large as scrollview
This may not be exactly due to scichart but if anyone faced this problem before it would help. If you attempt to scroll when the SciChartSurface is as large as the parent UIScrollView, it doesn’t scroll. Almost like the SciChart surface has the priority of touch and doesn’t let the scroll view see the scroll.
I would greatly appreciate if anyone successfully got UIScrollview and Scicharts working well together. I might be doing a bunch of rookie mistakes.
Adding a quick update,
I could fix (2) by disable User Interactions of the Chart.
Note that you can’t simply disable this in the Main Storyboard, this has to be done programmatically by calling
ChartName.isUserInteractionEnabled = false
So the only real issue is (1), getting the chart to render while scrollview is active.