summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.iOS/ViewRenderer.cs
diff options
context:
space:
mode:
authorE.Z. Hart <hartez@users.noreply.github.com>2016-04-24 00:13:27 -0600
committerRui Marinho <me@ruimarinho.net>2016-04-24 02:13:27 -0400
commit462d132f6f5f42871716cdbd455fba70e711541c (patch)
treec838afa67871ad12722e2c11328d444f66cb843f /Xamarin.Forms.Platform.iOS/ViewRenderer.cs
parent3b589b7f2a02c7b2d70f78abb6b476c8cc9bf950 (diff)
downloadxamarin-forms-462d132f6f5f42871716cdbd455fba70e711541c.tar.gz
xamarin-forms-462d132f6f5f42871716cdbd455fba70e711541c.tar.bz2
xamarin-forms-462d132f6f5f42871716cdbd455fba70e711541c.zip
Allow renderers to specify whether native controls should be eagerly disposed (#129)
Diffstat (limited to 'Xamarin.Forms.Platform.iOS/ViewRenderer.cs')
-rw-r--r--Xamarin.Forms.Platform.iOS/ViewRenderer.cs8
1 files changed, 7 insertions, 1 deletions
diff --git a/Xamarin.Forms.Platform.iOS/ViewRenderer.cs b/Xamarin.Forms.Platform.iOS/ViewRenderer.cs
index 5b3be1c3..1186fb4c 100644
--- a/Xamarin.Forms.Platform.iOS/ViewRenderer.cs
+++ b/Xamarin.Forms.Platform.iOS/ViewRenderer.cs
@@ -41,11 +41,17 @@ namespace Xamarin.Forms.Platform.iOS
return Control.SizeThatFits(size);
}
+ /// <summary>
+ /// Determines whether the native control is disposed of when this renderer is disposed
+ /// Can be overridden in deriving classes
+ /// </summary>
+ protected virtual bool ManageNativeControlLifetime => true;
+
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
- if (disposing && Control != null)
+ if (disposing && Control != null && ManageNativeControlLifetime)
{
Control.Dispose();
Control = null;