Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[iOS] Navigation doesn't work on sixth tab in shell #18193

Closed
sasharp opened this issue Oct 20, 2023 · 25 comments · Fixed by #26292
Closed

[iOS] Navigation doesn't work on sixth tab in shell #18193

sasharp opened this issue Oct 20, 2023 · 25 comments · Fixed by #26292
Labels
area-controls-shell Shell Navigation, Routes, Tabs, Flyout area-navigation NavigationPage platform/iOS 🍎 s/triaged Issue has been reviewed s/verified Verified / Reproducible Issue ready for Engineering Triage t/bug Something isn't working
Milestone

Comments

@sasharp
Copy link

sasharp commented Oct 20, 2023

Description

Navigation doesn't work in tabs after fourth. When navigate back the destination is shown in the list.

image

Steps to Reproduce

  1. Add more than 5 Tabs
  2. Click on More
  3. Select sixth tab
  4. Try to navigate to any subpage
  5. Go back

Link to public reproduction project repository

https://github.com/sasharp/MAUI8Bugs

Version with bug

8.0.0-rc.2.9373

Is this a regression from previous behavior?

No, this is something new

Last version that worked well

Unknown/Other

Affected platforms

iOS

Affected platform versions

No response

Did you find any workaround?

No response

Relevant log output

No response

@sasharp sasharp added the t/bug Something isn't working label Oct 20, 2023
@jsuarezruiz jsuarezruiz added the area-navigation NavigationPage label Oct 20, 2023
@mattleibow
Copy link
Member

I am not sure I 100% understand your issue.

One way to understand is that you are seeing a tab list instead of all the tabs. This is by design:

https://developer.apple.com/design/human-interface-guidelines/tab-bars#iOS-iPadOS

Avoid overflow tabs whenever possible. Depending on device size and orientation, the number of visible tabs can be smaller than the total number of tabs. If horizontal space limits the number of visible tabs, the trailing tab becomes a More tab, revealing the remaining items in a list on a separate screen. The More tab makes it harder for people to reach and notice content on tabs that are hidden, so try to limit scenarios in your app where this can happen.

Another way is that navigation is not working at all? When you select a tab from the list it is NOT navigating?

When you have a step of "Go back", there does not appear to be a back button so I am not sure.

Can you attach a sample and maybe clarify what you are seeing and what you expect?

@mattleibow mattleibow added s/needs-info Issue needs more info from the author s/needs-repro Attach a solution or code which reproduces the issue labels Oct 24, 2023
@ghost
Copy link

ghost commented Oct 24, 2023

Hi @sasharp. We have added the "s/needs-info" label to this issue, which indicates that we have an open question for you before we can take further action. This issue will be closed automatically in 7 days if we do not hear back from you by then - please feel free to re-open it if you come back to this issue after that time.

@ghost
Copy link

ghost commented Oct 24, 2023

Hi @sasharp. We have added the "s/needs-repro" label to this issue, which indicates that we require steps and sample code to reproduce the issue before we can take further action. Please try to create a minimal sample project/solution or code samples which reproduce the issue, ideally as a GitHub repo that we can clone. See more details about creating repros here: https://github.com/dotnet/maui/blob/main/.github/repro.md

This issue will be closed automatically in 7 days if we do not hear back from you by then - please feel free to re-open it if you come back to this issue after that time.

@sasharp
Copy link
Author

sasharp commented Oct 25, 2023

@mattleibow at 10th second you can see, that after click on "Go to SubPage >" the shell stays on the actual page. That is a problem and it occurs only on tabs, which are behind "..."
https://github.com/sasharp/MAUI8Bugs/raw/master/MAUI8Bugs/Resources/Raw/RPReplay_Final1698237045.mp4

@ghost ghost added s/needs-attention Issue has more information and needs another look and removed s/needs-info Issue needs more info from the author s/needs-repro Attach a solution or code which reproduces the issue labels Oct 25, 2023
@PureWeen PureWeen removed the s/needs-attention Issue has more information and needs another look label Nov 6, 2023
@PureWeen PureWeen added this to the Backlog milestone Nov 6, 2023
@ghost
Copy link

ghost commented Nov 6, 2023

We've added this issue to our backlog, and we will work to address it as time and resources allow. If you have any additional information or questions about this issue, please leave a comment. For additional info about issue management, please read our Triage Process.

@XamlTest
Copy link

Verified this on Visual Studio Enterprise 17.9.0 Preview 1(8.0.3). Repro on iOS 17.0 and MacCatalyst, not repro on Windows 11 and Android 14.0-API34 with below Project:
MAUI8Bugs.zip

@NeerajRai111
Copy link

Kindly share an update regarding the resolution timeline for reported bug #15103, reported in May 2023. Any insights on when a solution might be expected would be highly appreciated, as this issue significantly impedes the project's release.

@jppois
Copy link

jppois commented Jan 22, 2024

Hello, I'm in a similar situation as "NeerajRai111" which this issue is impeding my project too. If we could have an update, that would be appreciated. Thank you!

@pme442
Copy link

pme442 commented Feb 22, 2024

Any updates on this? I also need this to work (it did work in Xamarin Forms) in order to upgrade to MAUI.

@FrankVDL2471
Copy link

Any indication when this will be solved ?
Is there a (temporary) workaround ?

@vr4guid
Copy link

vr4guid commented May 2, 2024

It looks like this problem has expanded to include Android with the .Net8 MAUI release.

@vr4guid
Copy link

vr4guid commented May 2, 2024

@NeerajRai111 / @PureWeen ... Have you seen any work around for this blocker?

@NeerajRai111
Copy link

@NeerajRai111 / @PureWeen ... Have you seen any work around for this blocker?

@vr4guid,Unfortunately, I haven't discovered any solution or workaround for this issue yet. It's a significant blocker in our project, and I'm uncertain when Maui team will address these issues.

@jppois
Copy link

jppois commented May 2, 2024 via email

@sasharp
Copy link
Author

sasharp commented May 2, 2024

As workaround you can create a list on the fifth tab, with other tabs as items. It could simulate the native behavour.

@vr4guid
Copy link

vr4guid commented May 2, 2024

Just to be thorough I am taking the MAUI sample for Shell Tabs and testing the functionality. I will report back on this thread what I find and if the issue still exists in 8.0.

image

@vr4guid
Copy link

vr4guid commented May 2, 2024

I have updated the Xaminals sample provided by the MAUI team and added two additional "animals" (Fish and Snakes). You can find the full source at the link below. You will also find two MP4 files - one for Android and one for iOS.

https://github.com/vr4guid/Maui-8-Xaminals

The bottom line...The Android functionality looks pretty clean and the iOS code needs some TLC.

I think the gap in functionality between Android and iOS needs to be a CRITICAL priority item for resolution.

@pme442
Copy link

pme442 commented May 20, 2024

Any update on this issue yet??

@NeerajRai111
Copy link

Is there any update on the issue related to the Tab Control? Additionally, are there any third-party Tab Controls we could consider as alternatives?

@vr4guid
Copy link

vr4guid commented Jun 6, 2024

It looks like Fix #22655 may provide some improvements to this issue.

@kubaflo Do you think your pull request will resolve this issue?

@kubaflo
Copy link
Contributor

kubaflo commented Jun 6, 2024

@vr4guid I'm pretty sure #22655 fixes it. Check out the third video that I've attached there

@vr4guid
Copy link

vr4guid commented Jun 12, 2024

@kubaflo ...Your changes look to deal with a couple of pending issues. I see your PR is such in review.

@kubaflo
Copy link
Contributor

kubaflo commented Jun 12, 2024

@vr4guid yes, it is in a review. I'm keeping an eye on it :)

@sikemullivan
Copy link

sikemullivan commented Dec 11, 2024

I'm on 9.0.12, from the "More" tab, I can navigate to my subpage "MembersPage". However, my subpage cannot navigate anywhere else. Shell.Current.GoToAsync will no longer work after that.

5th Option in the TabBar of App Shell. MembersPage lists all the "members" to choose from.

        <Tab Title="Members" Route="members">
            <Tab.Icon>
                <FontImageSource FontFamily="FontAwesome"  Glyph="{x:Static styles:IconFont.Users}" />
            </Tab.Icon>
            <ShellContent ContentTemplate="{DataTemplate members:MembersPage}"/>
        </Tab>

Registration for navigating to a single member.

Routing.RegisterRoute("members/edit", typeof(MemberPage));

Code executed on MembersPage to navigate to MemberPage. This is what does not work. No exception, it gracefully does nothing.

await Shell.Current.GoToAsync("//members/edit", new Dictionary<string, object> { { "uniqueId", model.Member.UniqueId } });

More -> MembersPage (Route:members) works fine.
Image

MembersPage -> MemberPage (Route:members/edit) does not navigate.
Image

If I click "< More" to go back, then "Members" changes to "Member".
Image

Works fine on Android. How does this even happen? Is there a better way to navigate in Maui? I don't understand how this sort of issue even makes it out. I figured this sort of functionality would be tested rigorously. Seems like a pretty basic feature.

@kubaflo
Copy link
Contributor

kubaflo commented Dec 11, 2024

Hi, @sikemullivan we are aware of these bugs and have 2 PR's that are likely to fix it

Please be patient as the fixes will be soon available I hope.😅

In the meantime, you can download a package generated by #26292 to check if it fixes the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-controls-shell Shell Navigation, Routes, Tabs, Flyout area-navigation NavigationPage platform/iOS 🍎 s/triaged Issue has been reviewed s/verified Verified / Reproducible Issue ready for Engineering Triage t/bug Something isn't working
Projects
None yet