- Add a bottom bar for all platforms
- Add two tabs
- Make it liquid glass on new iOS devices. (ONLY the bottom bar view)
The kotlin documentation directs you into using more then just the liquid glass bottom bar: it also creates the tab containers for examples. That might be more native, but also has some drawbacks (more custom logic and wiring; will deeplinks into tabs still work perfectly? state restoration? that is enforce a backstack per tab?).
So in this ticket, we only change the view.
DOD
- liquid glass bottom bar on new iOS versions
- old bottom bar on older versions
- android bottom bar
- accessibility works well enough
- OS font size changes update bottom bar on iOS instantly
- darkmode changes update bottom bar on iOS instantly
- language changes update bottom bar on iOS instantly
Technically
This library shows an option of using just the UITabBar view, which might have smaller impact on the navigation in the app, we can take inspiration from this approach:
Navigation Bar - Calf
the view: Calf/calf-ui/src/iosMain/kotlin/com/mohamedrejeb/calf/ui/navigation/AdaptiveNavigationBar.ios.kt at 94d6842b7367025127d79e33efd249ae488bb6f4 · MohamedRejeb/Calf
The kotlin documentation directs you into using more then just the liquid glass bottom bar: it also creates the tab containers for examples. That might be more native, but also has some drawbacks (more custom logic and wiring; will deeplinks into tabs still work perfectly? state restoration? that is enforce a backstack per tab?).
So in this ticket, we only change the view.
DOD
Technically
This library shows an option of using just the UITabBar view, which might have smaller impact on the navigation in the app, we can take inspiration from this approach:
Navigation Bar - Calf
the view: Calf/calf-ui/src/iosMain/kotlin/com/mohamedrejeb/calf/ui/navigation/AdaptiveNavigationBar.ios.kt at 94d6842b7367025127d79e33efd249ae488bb6f4 · MohamedRejeb/Calf