Xamarin forms android tablet masterdetailpage 问题
Xamarin forms android tablet masterdetailpage issue
我刚开始在 android 平板电脑上测试我的应用程序,发现了一个奇怪的错误:
我只想在我的主页打开时启用母版页。
所以我创建了 Custom NavigationPage 并覆盖了方法:
/// <summary>
/// Отключение бокового меню при добавлении на главный экран новых страниц
/// </summary>
/// <param name="child"></param>
protected override void OnChildAdded(Element child)
{
base.OnChildAdded(child);
if (this.Navigation.NavigationStack.Count > 1)
App.detailPage.IsGestureEnabled = false;
}
/// <summary>
/// Включение бокового меню при наличии только одной страницы на главном экране
/// </summary>
/// <param name="child"></param>
protected override void OnChildRemoved(Element child)
{
base.OnChildRemoved(child);
if (this.Navigation.NavigationStack.Count < 2)
App.detailPage.IsGestureEnabled = true;
}
这是我的横向主页:
当我将一些页面推送到我的 NavigationPage 时,母版页消失了:
之后,当我 return 在我的主页上时,母版页仍然不可用:
至少我需要在我的 MainPage 上显示我的 MasterPage,如果有人告诉我如何将 masterpage 隐藏到左侧并通过滑动手势使用它,就像在手机上一样,那将是完美的。提前致谢。
顺便说一句,我找到了我的问题的答案:)
现在,我最终在我的 MasterPage 中添加了 Tablet 习惯用法的行为。
构造函数代码:
public MasterDetailPage1()
{
InitializeComponent();
/// Some coding
if (Device.Idiom == TargetIdiom.Tablet)
MasterBehavior = MasterBehavior.Popover;
/// Some coding
}
希望对某人有所帮助。
我刚开始在 android 平板电脑上测试我的应用程序,发现了一个奇怪的错误: 我只想在我的主页打开时启用母版页。 所以我创建了 Custom NavigationPage 并覆盖了方法:
/// <summary>
/// Отключение бокового меню при добавлении на главный экран новых страниц
/// </summary>
/// <param name="child"></param>
protected override void OnChildAdded(Element child)
{
base.OnChildAdded(child);
if (this.Navigation.NavigationStack.Count > 1)
App.detailPage.IsGestureEnabled = false;
}
/// <summary>
/// Включение бокового меню при наличии только одной страницы на главном экране
/// </summary>
/// <param name="child"></param>
protected override void OnChildRemoved(Element child)
{
base.OnChildRemoved(child);
if (this.Navigation.NavigationStack.Count < 2)
App.detailPage.IsGestureEnabled = true;
}
这是我的横向主页:
当我将一些页面推送到我的 NavigationPage 时,母版页消失了:
之后,当我 return 在我的主页上时,母版页仍然不可用:
至少我需要在我的 MainPage 上显示我的 MasterPage,如果有人告诉我如何将 masterpage 隐藏到左侧并通过滑动手势使用它,就像在手机上一样,那将是完美的。提前致谢。
顺便说一句,我找到了我的问题的答案:) 现在,我最终在我的 MasterPage 中添加了 Tablet 习惯用法的行为。 构造函数代码:
public MasterDetailPage1()
{
InitializeComponent();
/// Some coding
if (Device.Idiom == TargetIdiom.Tablet)
MasterBehavior = MasterBehavior.Popover;
/// Some coding
}
希望对某人有所帮助。