当我尝试将Master(MasterDetailPage)的背景颜色设置为透明时,它会保持白色。
基本上我想看到的是,细节页面的颜色是通过Master显示的。
FOR EXAMPLE (如果上述情况属实,则此MasterDetailPage的背景颜色为红色(是的,我知道我可以将背景颜色设置为红色,但我希望它为透明))
答案 0 :(得分:4)
在看到TabletMasterDetailRenderer的documentation后,我们发现我们在PCL中创建的主页面或详细信息页面将添加到_masterController.View
和_detailController.View
。
因此,当我们将BackgroundColor
设置为Transparent
时,页面仍然会像我们看起来一样白。我们还应该设置_masterController.View
' s BackgroundColor
。
我们可以在渲染器中找到_masterController
并将其设置为:
public override void ViewWillLayoutSubviews()
{
base.ViewWillLayoutSubviews();
var master = ViewControllers[0];
master.View.BackgroundColor = UIColor.Clear;
//This is Detail ViewController
var detail = ViewController.ChildViewControllers[1];
}
为MasterDetailPage
创建自定义渲染器并将此代码放入其中。