Open
Description
Issue Description
Animation of transition rotate does not work on iOS, when using NativeScript >= 8.9.0.
This happens when using css keyframe animation or when using the Animation class.
We are only developing for iOS, I do not know if this is an issue on Android.
Animating other properties works as expected.
Also fails on latest pre-release: 8.9.3-next-07-11-2025-16231435223
Lowering @nativescript/core to 8.8.6 fixes the problem.
Thank You to anyone who can look into this and save our spinny.
Reproduction
This works:
@keyframes move {
from {
transform: translate(0, 0);
}
to {
transform: translate(100, 100);
}
}
.move {
animation: move 2s linear infinite forwards;
}
This fails (nothing happens):
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(359deg);
}
}
.spin {
animation: spin 2s linear infinite forwards;
}
As mentioned above, this also fails (nothing happens), but animating other properties work:
const spinAnimation = new Animation([{
target: this.iconEl.nativeElement,
rotate: 359,
duration: 2000,
iterations: Number.POSITIVE_INFINITY,
curve: CoreTypes.AnimationCurve.linear
}]);
spinAnimation.play();
Relevant log output (if applicable)
Environment
OS: macOS 15.5
CPU: (8) arm64 Apple M2
Shell: /opt/homebrew/bin/zsh
node: 22.13.1
npm: 11.0.0
nativescript: 8.9.2
# android
java: Not Found
ndk: Not Found
apis: Not Found
build_tools: Not Found
system_images: Not Found
# ios
xcode: 16.3/16E140
cocoapods: 1.14.3
python: 3.10.18
python3: 3.10.18
ruby: 3.2.2
platforms:
- DriverKit 24.4
- iOS 18.4
- macOS 15.4
- tvOS 18.4
- visionOS 2.4
- watchOS 11.4
Dependencies
"dependencies": {
"@angular/animations": "~20.1.0",
"@angular/common": "~20.1.0",
"@angular/compiler": "~20.1.0",
"@angular/core": "~20.1.0",
"@angular/forms": "~20.1.0",
"@angular/platform-browser": "~20.1.0",
"@angular/platform-browser-dynamic": "~20.1.0",
"@angular/router": "~20.1.0",
"@nativescript-community/drawingpad": "^4.1.0",
"@nativescript-community/sentry": "~4.6.40",
"@nativescript-community/ui-label": "^1.3.33",
"@nativescript/angular": "20.0.0",
"@nativescript/background-http": "^6.0.2",
"@nativescript/camera": "^7.0.0",
"@nativescript/core": "8.9.2",
"@nativescript/directions": "^2.0.2",
"@nativescript/email": "^2.1.0",
"@nativescript/firebase": "^11.1.3",
"@nativescript/iqkeyboardmanager": "^2.1.2",
"@nativescript/pdf": "^2.0.0",
"@nativescript/theme": "~3.1.0",
"@nativescript/unit-test-runner": "^3.0.4",
"base-64": "^1.0.0",
"jwt-decode": "^4.0.0",
"nativescript-extendedinfo": "^1.0.11",
"nativescript-numeric-keyboard": "^5.0.2",
"nativescript-phone": "^3.0.3",
"nativescript-sqlite": "^2.8.6",
"nativescript-taptic-engine": "^2.1.0",
"nativescript-ui-listview": "^15.2.3",
"nativescript-ui-sidedrawer": "^15.2.3",
"rxjs": "^7.8.2",
"zone.js": "~0.15.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "~20.1.0",
"@angular/compiler-cli": "~20.1.0",
"@nativescript/ios": "8.9.2",
"@nativescript/types": "~8.9.1",
"@nativescript/webpack": "~5.0.24",
"@ngtools/webpack": "~20.1.0",
"@sentry/webpack-plugin": "^3.5.0",
"@types/jasmine": "5.1.8",
"copy-webpack-plugin": "^13.0.0",
"fs-extra": "^11.3.0",
"karma": "6.4.4",
"karma-jasmine": "5.1.0",
"karma-mocha-reporter": "^2.2.5",
"karma-nativescript-launcher": "1.0.0",
"karma-spec-reporter": "^0.0.36",
"typescript": "~5.8.3"
}
Please accept these terms
- I have searched the existing issues as well as StackOverflow and this has not been posted before
- This is a bug report
- I agree to follow this project's Code of Conduct