在xamarin-forms應用程序中, 我想更改左側菜單的寬度對於android應用程序。在xamarin-forms中更改android MasterDetailPage的寬度
我試圖改變寬度按下面的代碼
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); }
}
}
現在Android應用程序代碼。
[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的寬度?
p.Width = 300 not working。如果應用任何靜態寬度,並且它在應用程序 – user2960398
@ user2960398中不受影響,您能告訴我您的xf版本嗎?它在我身邊工作,只是在pcl中定義的屬性不起作用。 –
這是在移動設備上工作,但它不適用於平板電腦 – user2960398