Titanium News #21
Older posts can be found here. Titanium 12.7.0 This version adds several new features to both iOS and Android, including more API parity like Tab.popToRootWindow, Ti.App.keyboardVisible and Label.letterSpacing. In addition, some core Android libraries like Google Play Service have been updated and a rare crash when opening a Tab Group on Android 12+13 has been fixed. Use titanium sdk install 12.7.0.GA to get the new version. Highlights: Rotate event Views have a rotate event now. You can use this in combination with the pinch event to do some scale & rotate with your fingers: Example code TabGroup show/hide support Show/hide tab-bar programmatically, especially on iOS 18+ elevated tab bar which obstructs custom nav bar on iPad apps with a TabGroup. You can now use Ti.UI.TabGroup.showTabBar() or Ti.UI.TabGroup.hideTabBar() Android letter-spacing iOS can do letter-spacing using an attributedString already but there was no option for Android. This release will add a new property letterSpacing on a Label so you can simply do lbl.letterSpacing = 0.1 do change the spacing. Check this link for a full example. Android: improved BottomNavigation The BottomNavigation has a new experimental property that allows you to test a new implementation of the native BottomNavigation. It will fix some issues for Material 3 themes and adds some new features like direct font icon support, enable/disable clicks or setting the indicator color. For more screenshots and example code visit the PR. Parity: Android event for keyboard open/closed On Android you can use a new event keyboardframechanged to check if the keyboard was opened or closed. In combination with Ti.App.keyboardVisible you can also check if it is currently visible. Demo code is available in the ticket. Parity: Android Tab.popToRootWindow() Now you can close all child windows of a TabGroup on Android and return to the root TabGroup window by using Tab.popToRootWindow(). textTransform for Label A Ti.UI.Label has a new textTransform property that you can use like in CSS to make the content uppercase, lowercase or set it to none the get the initial text back. Support html in text areas A TextArea can show HTML text now by setting textarea.html = "...". If you want to have a full HTML editor you can checkout https://github.com/hansemannn/titanium-rich-text-editor Gradle and NDK update Gradle was updated to 8.10.2 and NDK to v27. Bugfixes Next to the new features we have plenty of bug fixes you can find in the the release notes. More info: Blog post and Release notes. Modules In https://github.com/m1ga/ti.jsPDF you can find a full app example how to use jsPDF to create PDF files in your Titanium SDK app. TiKit UI Components has been updated to v1.1.4, adding new features to simplify UI development in Titanium apps. ti.documentscanner - Titanium document scanner module for Android using ML Kit Some recompiled modules for ARM Mac: TiLogCatcher, NappSlideMenu, SquareCamera ti.animation - Android libraries are updated to Lottie 6.6.6 and Rive 10.1.4 ti.exoplayer - updated to exoplayer 1.4.1 That's it If you have feedback or some interesting Titanium SDK apps, modules or widgets you would like to share: get in contact with me or leave a comment and I'll add it to the next Titanium news.

Older posts can be found here.
Titanium 12.7.0
This version adds several new features to both iOS and Android, including more API parity like Tab.popToRootWindow
, Ti.App.keyboardVisible
and Label.letterSpacing
.
In addition, some core Android libraries like Google Play Service have been updated and a rare crash when opening a Tab Group on Android 12+13 has been fixed.
Use titanium sdk install 12.7.0.GA
to get the new version.
Highlights:
Rotate event
Views have a rotate event now. You can use this in combination with the pinch event to do some scale & rotate with your fingers: Example code
TabGroup show/hide support
Show/hide tab-bar programmatically, especially on iOS 18+ elevated tab bar which obstructs custom nav bar on iPad apps with a TabGroup. You can now use Ti.UI.TabGroup.showTabBar()
or Ti.UI.TabGroup.hideTabBar()
Android letter-spacing
iOS can do letter-spacing using an attributedString already but there was no option for Android. This release will add a new property letterSpacing
on a Label so you can simply do lbl.letterSpacing = 0.1
do change the spacing. Check this link for a full example.
Android: improved BottomNavigation
The BottomNavigation has a new experimental
property that allows you to test a new implementation of the native BottomNavigation. It will fix some issues for Material 3 themes and adds some new features like direct font icon support, enable/disable clicks or setting the indicator color. For more screenshots and example code visit the PR.
Parity: Android event for keyboard open/closed
On Android you can use a new event keyboardframechanged
to check if the keyboard was opened or closed. In combination with Ti.App.keyboardVisible
you can also check if it is currently visible. Demo code is available in the ticket.
Parity: Android Tab.popToRootWindow()
Now you can close all child windows of a TabGroup on Android and return to the root TabGroup window by using Tab.popToRootWindow()
.
textTransform for Label
A Ti.UI.Label has a new textTransform
property that you can use like in CSS to make the content uppercase, lowercase or set it to none the get the initial text back.
Support html in text areas
A TextArea can show HTML text now by setting textarea.html = "..."
. If you want to have a full HTML editor you can checkout https://github.com/hansemannn/titanium-rich-text-editor
Gradle and NDK update
Gradle was updated to 8.10.2 and NDK to v27.
Bugfixes
Next to the new features we have plenty of bug fixes you can find in the the release notes.
More info: Blog post and Release notes.
Modules
- In https://github.com/m1ga/ti.jsPDF you can find a full app example how to use jsPDF to create PDF files in your Titanium SDK app.
- TiKit UI Components has been updated to v1.1.4, adding new features to simplify UI development in Titanium apps.
- ti.documentscanner - Titanium document scanner module for Android using ML Kit
- Some recompiled modules for ARM Mac: TiLogCatcher, NappSlideMenu, SquareCamera
- ti.animation - Android libraries are updated to Lottie 6.6.6 and Rive 10.1.4
- ti.exoplayer - updated to exoplayer 1.4.1
That's it
If you have feedback or some interesting Titanium SDK apps, modules or widgets you would like to share: get in contact with me or leave a comment and I'll add it to the next Titanium news
.