We are really excited to announce, that SciChart iOS/ Android / Xamarin v2.2 is released!
What’s New in SciChart iOS /Android /Xamarin v 2.2?
There is a large number of improvements and bug fixes made in SciChart iOS/ Android / Xamarin v2.2. We have made a major step forward by refactoring of our examples, fixing memory leaks, crashes, and bugs and other improvements. It is recommended for all users of SciChart v2.1 to update to the latest version! Please see more information below:
- iOS Charts have been made compatible with Xcode 10 and iOS 12 by removing deprecated libstdc++ with libc++. SciChart iOS v2.2 no longer uses this library and will work with future version(s) of iOS & Xcode.
- Android Charts showcase demo and examples project has been updated to work with Android Studio 3.1: updated to Gradle 4.4; updated to SDK 27 ( Oreo ).
- Android library has been updated to support library 27.1.0 and Kotlin 1.2.30
- Fixed hitTestAxis method which caused issues with axis tooltips values
- SCIOS-626: fixed annotations don’t clip by axes and drawn over them.
- SCIOS-639: fixed annotation added after chart initializing is not being rendered
- SCIOS-640: fixed Incorrect casting from Swift.Array<Double> to SCIGeneric
- SC-DROID-526: fixed incorrect rendering of RTL text caused by trying to reuse text layout ( it was defined it with Integer.MAX_VALUE width )
- SC-DROID-525: fixed incorrect text rendering in heatmap ( added flipping of x and y coordinates if the chart is vertical )
- SCIOS-624: fixed placing annotations below chart doesn’t work
- SC-DROID-521: fixed incorrect work of sweep animation with PaletteProvided which was caused by adding new points into render pass data
- SC-DROID-522: refactored PieSegment and PieDonutRenderableSeriesBase to correctly handle case when PieSegment changes;
- SC-DROID-520: fixed incorrect hit test which is caused by updating xValues and yValues but not indices:
- now render pass data remains the same and we just draw spline lines and perform hit test on original data;
- updated spline calculations which resulted in all NaN values – added n parameter to prevent going outside renderPassData bounds if x/yValues array are larger than
- actual renderPassData size; removed unused code from spline calculations;
- changed SplineLineRenderableSeries: now we calculate spline coords for coordinates instead of values right before drawing for correct work of animations;
- Added behavior options for tooltip modifiers; and added bindings.
- Fixed: issue in legendDataSource.
- Fixed: crash during measuring custom legend item is using a custom nib file from the main bundle.
- Fixed: addPointsPerformance demo example
- Fixed: crash when try using custom legend item nib file from the main bundle.
- Fixed: getter for color in gradient brushes.
- SC-DROID-518: fixed incorrect rendering of rects when use RenderSurface – it was caused by incorrect points index
- Fixed: memory leak in renderableSeries base
- Fixed broken units tests: removed usage of reflection for getting parameter names and replaced it on Mono.Cecil which allows doing the same but without loading dependencies of assembly;
- SC-DROID-511: Fixed cursor tooltip which wasn’t shown for the second half of the last candle in series; changed calculations in HitTestHelpers.isPointWithinXBounds() to prevent precision problems when performing hit test
- SC-DROID-513: fixed incorrect layout of horizontal legend – added usage of HorizontalScrollView when legend has horizontal orientation
- Fixed warning: atomic property cannot pair a synthesized setter/getter with a user-defined setter/getter
- Fixed: color of marker view of legend item
- Fixed: broken test by using a proper calendar in SCIDateUtil instead or using NSCalendar currentCalendar
- Fixed: flickering of the edge labels (also hiding them sometimes)
- Fixed: error when sometimes onVisibleRangeChanged() wasn’t called at the end of animation; added setMinMaxForced into IRange to set new Min/Max values even if they are equal to current Min/Max values + added tests
- Fixed: non-working onVisibleRangeChange method in IViewportManager; modified unit tests;
- Fixed: incorrect buildToolsVersion and updated SciChart dependencies to v2.1 in exported projects
- Fixed: broken parameter names generation in Xamarin: updated path required for metadata generator;
- SC-DROID-509: fixed incorrect drawing of pie and donut charts when there is only one segment; refactored drawing code;
- SCIOS-622: fixed hitTest doesn’t work properly with categoryDateAxis
- Fixed: SCIChartHeatmapColourMap while creating from xib
- SC-DROID-503: fixed rounding error when formatting label in LabelProvider for the category axis
- Added: main.storyboard and launchScreen back to the project
- SCIOS-623: refactoring swift examples:
- refactored speedTesting, hitTest, zoomandPan groups;
- refactored: styling and theaming group, axis behaviour group, ECG chart, oscilloscope chart, realtime ticking stock chart, stock chart example, multipane stock chart example, realtime chart examples, multi-series chart examples, gauge chart examples, pie and donut series, using themeManager example, and custom charts examples;
- added common Init method to ExampleViewBase which supposed to contain commonViewINItialisation;
- added labelProvider to columns side-by-side examples;
- SCIOS-625: legend changes:
- updated Xamarin.iOS bindings and examples;
- added property which allows dequeuing custom legend items from UICollectionView;
- refactored updatedchanged methods in dataSource;
- added handling of legendPosition
- Removed duplicate declaration in h file (already defined in protocol). Also named file properly
- Added attach To and detach methods to SCIPieSegment
- Added handling of showCheckBoxes and seriesMarkers
- Added: SCIChartLegendHorizontalLayout which allows the legend to wrap it’s content horizontally.
- Added: SCIChartLegendVerticalLayout which allows legend to wrap it’s content; Removed redundant code
- Added: ctors to h file
- Added missing ctors for SCISeriesInfo inheritors
- SC-DROID-510: added correct handling of tooltip placement when a chart is rotated; changed SliceLayout to prevent overlapping of rollover tooltips
- Added maxAsDouble and minAsDouble to omit conversion calls to SCIGeneric and SCIGenericDouble, even when use asDoubleRange; made asDoubleRange deprecated;
- Updated swift demo app labelProviders according to recent changes, reverted accidentally commented out deprecated properties in tooltip modifier styles
- Added: inMinMaxValid method into ranges
- Added: themeId to SCIThemeColorProvider
- Made SCIRenderableSeriesProtocol conform to SCIInvalidatableElementProtocol
- Changed: SeriesInfo seriesColor is now of type UIColor and isn’t nil every time
- Refactored: default ViewportManager to handle AutoRange.Always case in tryPerformAutoRange instead of onUpdateAxis; updated tests;
- SC-DROID-480: Added ClipModeTarget which allows specifying target range which will be used for clipping in ZoomPanModifier and XAxisDragModifier; fixing typo in name of setClipModeX method in modifier builders;
- SC-DROID-505: added correct disposing of resources for OpenGL based RenderSurface implementations; removed onSurfaceDestroyed method because it wasn’t actually called anywhere
- Changed: default values for piedonut charts – drawLabels and spacing
- Reworked speedTest examples as well as modifyAxisBehaviour ones.
- Moved missing ctors to SCIArrayController from SCIArrayControllerProtocol
- Created view from xib files
- SC-DROID-506: added usage of Path instead of simple drawLine to provide correct handling of dashed lines in modifiers.
Where to get iOS / Android / Xamarin v2.2?
You can get the SciChart iOS/Android/ Xamarin SDK v2.2 from the Downloads page. Source code customers can also get the latest from our Github repository as well as from Cocoapods for iOS, and Maven for Android. We also keep on delivering continuously for bug fixes, features and minor updates to the following package sources.
In addition, our example code is published to Github and is available to clone or download.