summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.Android
diff options
context:
space:
mode:
authorE.Z. Hart <hartez@users.noreply.github.com>2017-06-23 18:29:38 -0600
committerRui Marinho <me@ruimarinho.net>2017-06-26 16:46:19 +0100
commit96aa74d0f2684db2e6043072f4d2ae968e7a2cf1 (patch)
treef7f2bb525d7601a18c5782f68a988cb075541ce2 /Xamarin.Forms.Platform.Android
parentaa9bca1341d4233a0fb3428968d31531c371d834 (diff)
downloadxamarin-forms-96aa74d0f2684db2e6043072f4d2ae968e7a2cf1.tar.gz
xamarin-forms-96aa74d0f2684db2e6043072f4d2ae968e7a2cf1.tar.bz2
xamarin-forms-96aa74d0f2684db2e6043072f4d2ae968e7a2cf1.zip
Fix NRE when background color of button set in FormsApplicationActivity (#1010)
Diffstat (limited to 'Xamarin.Forms.Platform.Android')
-rw-r--r--Xamarin.Forms.Platform.Android/AppCompat/ButtonRenderer.cs2
-rw-r--r--Xamarin.Forms.Platform.Android/Renderers/ButtonRenderer.cs12
2 files changed, 8 insertions, 6 deletions
diff --git a/Xamarin.Forms.Platform.Android/AppCompat/ButtonRenderer.cs b/Xamarin.Forms.Platform.Android/AppCompat/ButtonRenderer.cs
index 81357fa6..c33ac19c 100644
--- a/Xamarin.Forms.Platform.Android/AppCompat/ButtonRenderer.cs
+++ b/Xamarin.Forms.Platform.Android/AppCompat/ButtonRenderer.cs
@@ -141,7 +141,7 @@ namespace Xamarin.Forms.Platform.Android.AppCompat
if (Element == null || Control == null)
return;
- _backgroundTracker.UpdateBackgroundColor();
+ _backgroundTracker?.UpdateBackgroundColor();
}
void UpdateAll()
diff --git a/Xamarin.Forms.Platform.Android/Renderers/ButtonRenderer.cs b/Xamarin.Forms.Platform.Android/Renderers/ButtonRenderer.cs
index da4ec0ba..0aac4edb 100644
--- a/Xamarin.Forms.Platform.Android/Renderers/ButtonRenderer.cs
+++ b/Xamarin.Forms.Platform.Android/Renderers/ButtonRenderer.cs
@@ -96,13 +96,12 @@ namespace Xamarin.Forms.Platform.Android
_textColorSwitcher = new TextColorSwitcher(button.TextColors);
button.AddOnAttachStateChangeListener(this);
}
- if (_backgroundTracker == null)
- _backgroundTracker = new ButtonBackgroundTracker(Element, Control);
}
+
+ if (_backgroundTracker == null)
+ _backgroundTracker = new ButtonBackgroundTracker(Element, Control);
else
- {
_backgroundTracker.Button = e.NewElement;
- }
UpdateAll();
}
@@ -127,7 +126,10 @@ namespace Xamarin.Forms.Platform.Android
protected override void UpdateBackgroundColor()
{
- _backgroundTracker.UpdateBackgroundColor();
+ if (Element == null || Control == null)
+ return;
+
+ _backgroundTracker?.UpdateBackgroundColor();
}
void UpdateAll()