Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Xamarin MasterDetailPage看起来很难看_Android_Xamarin_Xamarin.forms_Navigation Drawer_Master Detail - Fatal编程技术网

Android Xamarin MasterDetailPage看起来很难看

Android Xamarin MasterDetailPage看起来很难看,android,xamarin,xamarin.forms,navigation-drawer,master-detail,Android,Xamarin,Xamarin.forms,Navigation Drawer,Master Detail,我正在尝试创建一个MasterDetailPage,我不太确定我是否做对了,但是抽屉/母版看起来很难看。例如,导航栏颜色未显示,…: 关于如何改进的任何想法/提示?您可以使用片段活动轻松应用到母版页抽屉布局中的母版页应用到母版页和抽屉布局中的抽屉布局,您将自定义和操作常见类的事件母版详细信息 在开始回答之前,让我们先看一下MasterDetailPage类,以及在您的示例中如何配置MasterDetailPage Xamarin中的MasterDetailPage类。表单需要两个Page属性:

我正在尝试创建一个MasterDetailPage,我不太确定我是否做对了,但是抽屉/母版看起来很难看。例如,导航栏颜色未显示,…:


关于如何改进的任何想法/提示?

您可以使用片段活动轻松应用到母版页抽屉布局中的母版页应用到母版页和抽屉布局中的抽屉布局,您将自定义和操作常见类的事件

母版详细信息 在开始回答之前,让我们先看一下
MasterDetailPage
类,以及在您的示例中如何配置
MasterDetailPage

Xamarin中的
MasterDetailPage
类。表单需要两个
Page
属性:

  • MasterDetailPage.Detail
    属性需要设置为包含
    ContentPage
    实例的
    NavigationPage

  • MasterDetailPage.Master
    属性需要设置为
    ContentPage
    实例

示例中的
Detail
页面位于屏幕右侧。
Detail
页面是
NavigationPage
内部的
ContentPage
,其中
NavigationPage.BarBackgroundColor
设置为
Color.Black
。此
导航页面内的
ContentPage
已将
ContentPage.BackgroundColor
设置为
Color.Grey

示例中的
Master
页面位于屏幕左侧。它是一个
ContentPage
,其中包含一个
ListView
。在不知道代码的情况下,我猜
ContentPage.BackgroundColor
设置为
Color.White
,而
ListView.BackgroundColor
未设置

选择导航抽屉图标时,导航栏将被覆盖。之所以会出现这种情况,是因为导航栏位于
详细信息
页面上,而不在
主控
页面上

回答你的问题 为什么
母版
页面上不显示导航栏的颜色?
母版
页面只能是
内容页面
,并且不能位于
导航页面
的内部,因此它没有导航栏(只有
导航页面
可以有导航栏)

如何改进用户界面? 首先,确认您使用的是最新版本的Xamarin.Forms,v2.3.2.127

iOS

在iOS上,您可以通过设置
Master
页面的
Padding
属性并将
Master
页面
BackgroundColor
属性设置为
color.Black
来模拟
页面的导航栏颜色,如下所示:

Master=新内容页
{
BackgroundColor=颜色。黑色,
填充=新厚度(0,Device.OnPlatform(64,0,0),0,0)
};
Android

在Android上,预期的行为是从左侧滑入
Master
页面并覆盖
Detail
页面。要更新Android UI,我建议更新以下三项之一:
Master.BackgroundColor
属性、
ListView.BackgroundColor
属性或
Master
页面上ListView中使用的图标颜色

如果不希望导航栏向右移动,可以在Android
MainActivity
类中扩展
FormsApplicationActivity
,这将阻止导航栏移动:

公共类main活动:Xamarin.Forms.Platform.Android.FormsApplicationActivity

此示例显示,当您使用
FormsApplicationActivity
时,导航栏不会在Android应用程序上滑动:


您是否有一个示例图像,显示您希望实现的目标?我相信默认的是全高抽屉。这里有更多的例子:我们不知道为什么你的应用程序很丑,如果我们不知道你正在使用的代码和你想要达到的目标,我们可以做什么。例如:状态栏是完全白色的。我如何才能实现状态栏的原色为深色?或者整个抽屉都在工具栏下方?使用2.3.2.127,在母版
ContentPage
上设置
Padding
,不会像在照片中那样将页面推到汉堡按钮下方--它仍然显示在所有内容(包括系统状态栏)的顶部但它确实会将内容向下推。-我相信这是与我有关的。