【问题标题】:Xamarin ContentPage under Navigation导航下的 Xamarin ContentPage
【发布时间】:2019-10-16 14:53:37
【问题描述】:

我从 Shell 项目模板创建了一个 Xamarin Forms 应用。

第一页似乎是从 App.xaml 加载的:

<ShellContent ContentTemplate="{DataTemplate FirstPage}" />

如果之后我导航到任何页面,标题栏/导航栏似乎会切断或悬停在内容上:

await Navigation.PushAsync(new AboutPage());

我尝试将页面包装在 ScrollView 中,但这似乎没有帮助。

【问题讨论】:

    标签: android xamarin


    【解决方案1】:

    我只是测试了示例,我可以在最新的 Xamarin.Forms 版本4.2.0.848062 中确认此问题已修复

    请将您的Xamarin.forms 更新到最新版本。

    你也可以在 Github 上看到 issue 已经关闭:

    Shell content layout hides pageFix content offset when you navigate to second page on Shell

    【讨论】:

    • 精英。这成功了。我有版本 4.2.0.709249。我必须先更新 Xamarin Essentials,然后才能更新 Xamarin Forms。
    【解决方案2】:

    我个人认为这是 Shell 和应用程序级别导航之间的冲突问题,现在使用 shell 您不使用应用程序导航,您所做的就像 documentation 提到的那样。

    比如你给 ShellContent 一个路由:

     <ShellContent ...
                      Route="defRoute" />
    

    或者

    Routing.RegisterRoute("defRoute", typeof(DefaultPage));
    

    然后你导航类似

    await Shell.Current.GoToAsync("defRoute");
    

    为了更详细的了解,我建议你查看文档

    【讨论】:

    • 谢谢。注册路由后切换到Shell.Current.GoToAsync("about"),但是标题栏下还是有内容。
    • 您能否分享您的新代码以及您是如何导航到 about 页面的?谢谢!
    • 如果您从 Shell 项目模板创建项目并点击一个项目以进入 ItemDetailPage,则可以复制此内容,“文本:”标签位于标题栏下方。
    • 好吧,问题是它没有在我这边复制?您使用的是最新的 XF 吗?
    • 我使用的是 4.2.0.709249 版本 - 升级到 4.2.0.848062 成功了,谢谢。
    猜你喜欢
    • 2021-10-07
    • 2018-12-22
    • 1970-01-01
    • 2017-11-13
    • 1970-01-01
    • 1970-01-01
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多