如何在轮播页面中使用分层导航

时间:2017-11-10 18:15:47

标签: c# xamarin xamarin.forms carousel

我正在使用Xamarin表单,我有包含列表视图的页面,如果用户点击列表中的项目,它会通过推送异步将它们带到详细页面。我想让这个listview页面成为轮播页面的一部分,但这似乎是不可能的,因为轮播页面只将ContentPages作为其子项,为了使用push async,我必须使listview页面成为NavigationPage。我正在网上寻找,我找到一个人说他们通过使轮播页面成为NavigationPage的孩子来解决这个问题,但是我不确定它是如何工作的,或者它是否会起作用。如果有人能指出我在这里正确的方向,那将是伟大的。谢谢你的帮助!凹凸

1 个答案:

答案 0 :(得分:1)

我想你自己回答了这个问题。您可以在CarouselPage内加NavigationPage。我测试了这个并且它有效。

我是这样做的。我创建了一个名为CarouselPage的{​​{1}}并添加了三个内容页面(MainCarouselPage只显示其中的页码编号):

CarouselContentPage

然后在我的app.xaml.cs文件中,我实现了这样的构造函数:

[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class MainCarouselPage : CarouselPage
{
    public MainCarouselPage()
    {
        InitializeComponent();
        for(int i=1; i< 3; i++)
        {
            Children.Add(new CarouselContentPage(i));
        }
        Title = "Carousel Page";
    }
}

然后,在您public App() { InitializeComponent(); MainPage = new NavigationPage(new MainCarouselPage()); } 的{​​{1}}内,您可以致电ContentPage转到您应用中的其他页面。