Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-28373] iOS: Change Ti.UI.TabbedBar to use UITabBar

GitHub Issuen/a
TypeImprovement
PriorityLow
StatusOpen
ResolutionUnresolved
Affected Version/sn/a
Fix Version/sn/a
ComponentsiOS
Labelsbreaking-change, iOS, parity, tabbedbar, tabs
ReporterJoshua Quick
AssigneeJoshua Quick
Created2021-03-02T01:25:40.000+0000
Updated2021-04-05T21:45:23.000+0000

Description

*Summary:* On iOS, Ti.UI.TabbedBar currently uses Apple's [segmented control](https://developer.apple.com/design/human-interface-guidelines/ios/controls/segmented-controls) widget. Since the name "TabbedBar" implies it uses tabs, it should be changed to use Apple's [Tab Bar](https://developer.apple.com/design/human-interface-guidelines/ios/bars/tab-bars) widget instead (aka: [UITabBar](https://developer.apple.com/documentation/uikit/uitabbar)). This will also make it consistent with the Android implementation which uses Google's native tab widgets. *Note:* Titanium 10.0.0 will be introducing a new Ti.UI.OptionBar (see: [TIMOB-28317]) which will use a segmented control on iOS and a material toggle button group on Android. If you want to continue to use the segmented control, then switch to the new OptionBar view. *Test:* The attached [^TabbedBarTest.js] can be used to test this change with text-only, image-only, and image/text tabs, which will look like the below screenshot. Note that Apple's UITabBar expect both an image and title to be assigned to all tabs. !TabbedBar-iOS.png|thumbnail!

Attachments

FileDateSize
TabbedBar-iOS.png2021-03-02T01:39:53.000+0000818371
TabbedBarTest.js2021-03-02T01:39:41.000+00001410

Comments

  1. Joshua Quick 2021-03-02

    PR (master): https://github.com/appcelerator/titanium_mobile/pull/12511

JSON Source