Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

Repository files navigation

Description

This issue is similar to #32777, fixed in .NET MAUI 10.0.11, but it still happens in a different scenario.

The fix of #32777 correctly restores the Shell.TitleView on root pages, but the problem remains when the page is pushed with a back button visible (using Navigation.PushAsync).

In this case, the TitleView defined in XAML is not shown at all on iOS 26.

The only workaround is to inject the TitleView programmatically in OnAppearing, after a small Task.Delay, otherwise the TitleView is ignored by the native navigation bar. This workaround introduces a visible UI delay.

Steps to Reproduce

  1. Clone the reproduction repository: https://github.com/riccardodangelo/MauiTitleViewNavigationShellBugIOS
  2. Run the app on iOS 26.x
  3. The root page shows the TitleView correctly.
  4. Tap the button to navigate to ChildPage (await Navigation.PushAsync(new ChildPage());).
  5. On the pushed page, the TitleView does not appear, even though the XAML is identical to the root page

Expected

The TitleView should appear also on the pushed page.

Actual

The TitleView is missing on iOS 26.x when the page has a back button.

Link to public reproduction project repository

https://github.com/riccardodangelo/MauiTitleViewNavigationShellBugIOS

Version with bug

10.0.11

Is this a regression from previous behavior?

Yes, this used to work in .NET MAUI

Last version that worked well

9.0.0-preview.4.10690

Affected platforms

iOS

Affected platform versions

iOS 26.0 / 26.1

Did you find any workaround?

Yes, but with side effects.

To make the TitleView appear, it must be set programmatically inside OnAppearing, and only after a short delay:

protected override void OnAppearing()
{
    base.OnAppearing();

    MainThread.BeginInvokeOnMainThread(async () =>
    {
        await Task.Delay(50); // required, otherwise TitleView is ignored
        Shell.SetTitleView(this, CreateMyCustomTitleView());
    });
}

Without the delay, or when the TitleView is declared normally in XAML, iOS 26 does not render it. This workaround causes a visible UI delay when navigating on the pushed page.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages