Quantcast
Channel: Xamarin.Forms — Xamarin Community Forums
Viewing all articles
Browse latest Browse all 91519

Navigation issue when TabbedPage has ... MORE

$
0
0

I am unable to navigate the user to a page using PushAsync from a TabbedPage in the More list.

The problem is easily repeatable and stems from trying to open (PushAsync) another page from ContentPage belonging to a NavigationPage -> TabbedPage. When trying to perform a Navigation.PushAsync there are no errors yet the PushAsync fails to perform its task. This only errors when the NavigationPage(ContentPage) is in position 5 or more where it gets pushed to the MORE list.

The first 4 tabs work, the remaining 3 tabs do not, the remaining 3 tabs get encapsulated into the MORE list..

This is directly related to http://forums.xamarin.com/discussion/comment/176050/#Comment_176050 however I have been able to directly understand the issue.

Below is code you can implement to repeat this problem

App.cs

public class App : Application {
    public App () {
        MainPage = new MyTabbedPage ();
    }
}

MyTabbedPage.cs

public partial class MyTabbedPage : TabbedPage {
    public MyTabbedPage () {
        InitializeComponent ();

        Children.Add (new NavigationPage(new MainPageTest (){Title = "Tab 1"}){ Title = "Tab 1"});
        Children.Add (new NavigationPage(new MainPageTest (){Title = "Tab 2"}){ Title = "Tab 2"});
        Children.Add (new NavigationPage(new MainPageTest (){Title = "Tab 3"}){ Title = "Tab 3"});
        Children.Add (new NavigationPage(new MainPageTest (){Title = "Tab 4"}){ Title = "Tab 4"});
        Children.Add (new NavigationPage(new MainPageTest (){Title = "Tab 5"}){ Title = "Tab 5"});
        Children.Add (new NavigationPage(new MainPageTest (){Title = "Tab 6"}){ Title = "Tab 6"});
        Children.Add (new NavigationPage(new MainPageTest (){Title = "Tab 7"}){ Title = "Tab 7"});
    }
}

MainPageTest.cs

public partial class MainPageTest : ContentPage {
    public MainPageTest () {
        InitializeComponent ();

        buttonTest.Clicked += async (sender, e) => {
            await Navigation.PushAsync(new PageDetail());
        };
    }
}

Viewing all articles
Browse latest Browse all 91519

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>