summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.Android/Renderers/MasterDetailRenderer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Platform.Android/Renderers/MasterDetailRenderer.cs')
-rw-r--r--Xamarin.Forms.Platform.Android/Renderers/MasterDetailRenderer.cs22
1 files changed, 10 insertions, 12 deletions
diff --git a/Xamarin.Forms.Platform.Android/Renderers/MasterDetailRenderer.cs b/Xamarin.Forms.Platform.Android/Renderers/MasterDetailRenderer.cs
index 09c0c7c7..ec9c620e 100644
--- a/Xamarin.Forms.Platform.Android/Renderers/MasterDetailRenderer.cs
+++ b/Xamarin.Forms.Platform.Android/Renderers/MasterDetailRenderer.cs
@@ -44,6 +44,10 @@ namespace Xamarin.Forms.Platform.Android
}
}
+ IPageController MasterPageController => _page.Master as IPageController;
+ IPageController DetailPageController => _page.Detail as IPageController;
+ IPageController PageController => Element as IPageController;
+
public void OnDrawerClosed(AView drawerView)
{
}
@@ -184,13 +188,13 @@ namespace Xamarin.Forms.Platform.Android
protected override void OnAttachedToWindow()
{
base.OnAttachedToWindow();
- ((Page)Element).SendAppearing();
+ PageController.SendAppearing();
}
protected override void OnDetachedFromWindow()
{
base.OnDetachedFromWindow();
- ((Page)Element).SendDisappearing();
+ PageController.SendDisappearing();
}
protected virtual void OnElementChanged(VisualElement oldElement, VisualElement newElement)
@@ -256,20 +260,14 @@ namespace Xamarin.Forms.Platform.Android
void MasterDetailPageAppearing(object sender, EventArgs e)
{
- if (_page.Master != null)
- _page.Master.SendAppearing();
-
- if (_page.Detail != null)
- _page.Detail.SendAppearing();
+ MasterPageController?.SendAppearing();
+ DetailPageController?.SendAppearing();
}
void MasterDetailPageDisappearing(object sender, EventArgs e)
{
- if (_page.Master != null)
- _page.Master.SendDisappearing();
-
- if (_page.Detail != null)
- _page.Detail.SendDisappearing();
+ MasterPageController?.SendDisappearing();
+ DetailPageController?.SendDisappearing();
}
void OnBackButtonPressed(object sender, BackButtonPressedEventArgs backButtonPressedEventArgs)