【发布时间】:2025-12-29 20:45:12
【问题描述】:
我正在使用添加导航栏
MainPage = new NavigationPage (new Home ());
然后在我的Home.cs 页面上我不想显示导航栏,只有从该页面链接的页面我想显示导航栏。为了阻止导航栏显示在此页面上,我在 Home.cs 的开头使用了以下代码。
NavigationPage.SetHasNavigationBar (this, false);
从这里使用Navigation.Push.Async 转到另一个页面时,我在Home.cs 的底部看到一个“跳转”(移动?)。就像它增加了下一页导航栏的高度。
在 iOS 上,如果您将 Home.cs 的背景颜色设置为除白色以外的任何颜色,则会导致明显的跳跃。
在 Android 上,它似乎只会在导航回 Home.cs 页面时导致这种“跳转”。
这是我用来推送到下一页的代码。
btn.Clicked += async (sender, e) => await Navigation.PushAsync (new TestPage ());
我试图从页面中删除所有 padding.margins 但这没有帮助。当我开始一个新项目来测试这一点时,我没有什么可以改变的,所以我想不出任何其他可以解决这个问题的改变。
如下图: Tried to show the jump in this gif
注意: 留意Home.cs(灰色)页面。
【问题讨论】:
-
我也面临同样的问题.. 如何解决问题
标签: c# android ios xamarin xamarin.forms