【发布时间】:2017-11-02 03:34:28
【问题描述】:
在 xamarin-forms 应用程序中, 我想为安卓应用更改左侧菜单的宽度。
我正在尝试按照以下代码更改宽度
class MyMasterDetailPage : MasterDetailPage
{
public static readonly BindableProperty DrawerWidthProperty = BindableProperty.Create<MyMasterDetailPage, int>(p => p.DrawerWidth, default(int));
public int DrawerWidth
{
get { return (int)GetValue(DrawerWidthProperty); }
set { SetValue(DrawerWidthProperty, value); }
}
}
现在是安卓应用代码。
[assembly: Xamarin.Forms.ExportRenderer(typeof(Xamarin.Forms.MasterDetailPage), typeof(MyMasterDetailRenderer))]
class MyMasterDetailRenderer : MasterDetailRenderer
{
bool firstDone;
public override void AddView(View child)
{
if (firstDone)
{
MyMasterDetailPage page = (MyMasterDetailPage)this.Element;
LayoutParams p = (LayoutParams)child.LayoutParameters;
p.Width = page.DrawerWidth;
base.AddView(child, p);
}
else
{
firstDone = true;
base.AddView(child);
}
}
}
上面的代码不工作。 请分享有关如何更改 Android ap 的 MasterDetailPage 宽度的想法?
【问题讨论】:
标签: c# xamarin.android xamarin.forms