if (circlePages.Count >= 1)
{
NativeCirclePage native = circlePages[circlePages.Count - 1];
- circlePages.RemoveAt(circlePages.Count - 1);
+ circlePages.Remove(native);
return native;
}
return new NativeCirclePage(XForms.NativeParent);
var listview = circleListviews[surface];
if (listview != null)
{
- Console.WriteLine("Pre Test");
- //circleListviews.Remove(surface);
+ circleListviews.Remove(surface);
return listview;
}
}
var scroller = circleScrollers[surface];
if (scroller != null)
{
- //circleScrollers.Remove(surface);
+ circleScrollers.Remove(surface);
return scroller;
}
}
}
return Activator.CreateInstance(type, new[] { XForms.NativeParent }) as EvasObject;
}
+
+ public static void DeleteUnusedNative()
+ {
+ foreach (var item in circlePages)
+ {
+ item.Unrealize();
+ }
+ circlePages.Clear();
+
+ foreach (var item in circleListviews)
+ {
+ item.Value.Unrealize();
+ }
+ circleListviews.Clear();
+
+ foreach (var item in circleScrollers)
+ {
+ item.Value.Unrealize();
+ }
+ circleScrollers.Clear();
+ }
}
}
\ No newline at end of file
if (labels.Count >= 1)
{
Label native = labels[labels.Count - 1];
- labels.RemoveAt(labels.Count - 1);
+ labels.Remove(native);
return native;
}
return new Label(Forms.NativeParent);
if (images.Count >= 1)
{
Image native = images[images.Count - 1];
- images.RemoveAt(images.Count - 1);
+ images.Remove(native);
return native;
}
return new Image(Forms.NativeParent);
if (buttons.Count >= 1)
{
Watch.WatchButton native = buttons[buttons.Count - 1];
- buttons.RemoveAt(buttons.Count - 1);
+ buttons.Remove(native);
return native;
}
return new Watch.WatchButton(Forms.NativeParent);
if (editfieldEntrys.Count >= 1)
{
EditfieldEntry native = editfieldEntrys[editfieldEntrys.Count - 1];
- editfieldEntrys.RemoveAt(editfieldEntrys.Count - 1);
+ editfieldEntrys.Remove(native);
return native;
}
return new EditfieldEntry(Forms.NativeParent);
if (canvases.Count >= 1)
{
Canvas native = canvases[canvases.Count - 1];
- canvases.RemoveAt(canvases.Count - 1);
+ canvases.Remove(native);
return native;
}
return new Canvas(Forms.NativeParent);
if (pages.Count >= 1)
{
Page native = pages[pages.Count - 1];
- pages.RemoveAt(pages.Count - 1);
+ pages.Remove(native);
return native;
}
return new Page(Forms.NativeParent);
public static void DeleteUnusedNative()
{
- for (int i=0; i< labels.Count; i++)
+ foreach (var native in labels)
{
- Label native = labels[labels.Count - 1];
- labels.RemoveAt(labels.Count - 1);
native.Unrealize();
}
- for (int i = 0; i < images.Count; i++)
+ labels.Clear();
+
+ foreach (var native in images)
{
- Image native = images[images.Count - 1];
- images.RemoveAt(images.Count - 1);
native.Unrealize();
}
- for (int i = 0; i < buttons.Count; i++)
+ images.Clear();
+
+ foreach (var native in buttons)
{
- Button native = buttons[buttons.Count - 1];
- buttons.RemoveAt(buttons.Count - 1);
native.Unrealize();
}
- for (int i = 0; i < canvases.Count; i++)
+ buttons.Clear();
+
+ foreach (var native in canvases)
{
- Canvas native = canvases[canvases.Count - 1];
- canvases.RemoveAt(canvases.Count - 1);
native.Unrealize();
}
- for (int i = 0; i < pages.Count; i++)
+ canvases.Clear();
+
+ foreach (var native in pages)
{
- Page native = pages[pages.Count - 1];
- pages.RemoveAt(pages.Count - 1);
native.Unrealize();
}
+ pages.Clear();
}
}
}
\ No newline at end of file