diff options
author | E.Z. Hart <hartez@users.noreply.github.com> | 2017-06-23 18:29:38 -0600 |
---|---|---|
committer | Rui Marinho <me@ruimarinho.net> | 2017-06-26 16:46:19 +0100 |
commit | 96aa74d0f2684db2e6043072f4d2ae968e7a2cf1 (patch) | |
tree | f7f2bb525d7601a18c5782f68a988cb075541ce2 /Xamarin.Forms.Platform.Android | |
parent | aa9bca1341d4233a0fb3428968d31531c371d834 (diff) | |
download | xamarin-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.cs | 2 | ||||
-rw-r--r-- | Xamarin.Forms.Platform.Android/Renderers/ButtonRenderer.cs | 12 |
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() |