summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.Android
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Platform.Android')
-rw-r--r--Xamarin.Forms.Platform.Android/AppCompat/MasterDetailContainer.cs2
-rw-r--r--Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs7
2 files changed, 4 insertions, 5 deletions
diff --git a/Xamarin.Forms.Platform.Android/AppCompat/MasterDetailContainer.cs b/Xamarin.Forms.Platform.Android/AppCompat/MasterDetailContainer.cs
index faaf7462..8c7059d3 100644
--- a/Xamarin.Forms.Platform.Android/AppCompat/MasterDetailContainer.cs
+++ b/Xamarin.Forms.Platform.Android/AppCompat/MasterDetailContainer.cs
@@ -138,7 +138,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
if (disposing)
{
- if (_currentFragment != null)
+ if (_currentFragment != null && !FragmentManager.IsDestroyed)
{
FragmentTransaction transaction = FragmentManager.BeginTransaction();
transaction.DisallowAddToBackStack();
diff --git a/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs b/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
index 09c5c49b..e262c605 100644
--- a/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
+++ b/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs
@@ -120,14 +120,13 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
{
_disposed = true;
- var activity = (FormsAppCompatActivity)Context;
-
// API only exists on newer android YAY
if ((int)Build.VERSION.SdkInt >= 17)
{
- if (!activity.IsDestroyed)
+ FragmentManager fm = FragmentManager;
+
+ if (!fm.IsDestroyed)
{
- FragmentManager fm = FragmentManager;
FragmentTransaction trans = fm.BeginTransaction();
foreach (Fragment fragment in _fragmentStack)
trans.Remove(fragment);