MonoDroid: Fehler beim Aufrufen des Konstruktors der benutzerdefinierten Ansicht - TwoDScrollView

Ich erstelle eine Android-Anwendung, die das hier abgebildete TwoDScrollView verwendet:

http://blog.gorges.us/2010/06/android-two-dimensional-scrollview/

Dieselbe Klasse kann auf mehreren anderen Websites referenziert werden, und andere auf Stack Overflow haben diesbezüglich Fragen gestellt. Ich habe es in einer früheren Android-Anwendung verwendet, die ich mit Java / Eclipse erstellt habe, und hatte Erfolg.

Mit meiner aktuellen Anwendung wollte ich C # und MonoDroid verwenden. Ich habe beschlossen, die gesamte TwoDScrollView-Klasse in C # umzuschreiben. Nachdem ich es umgeschrieben und dann in einem Layout-XML verwendet habe, erhalte ich die folgenden Ausnahmen, wenn ich versuche, meinen Code auszuführen:

System.NotSupportedException wurde ausgelöst. Instanz vom Typ MyProject.TwoDScrollView kann vom nativen Handle 44f4d310 nicht aktiviert werden.

System.Exception: Kein Konstruktor für MyProject.TwoDScrollView ::. Ctor (System.IntPtr, Android.Runtime.JniHandleOwnership) gefunden ...... mit weiterem Text, der folgt ....

Mein Layout XML sieht wie folgt aus:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

<myproject.TwoDScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

</myproject.TwoDScrollView>

</RelativeLayout>

Befolgen Sie die Anweisungen unter dem folgenden Link zur Verwendung benutzerdefinierter Ansichten in Layout-XML in MonoDroid:http://docs.xamarin.com/android/advanced_topics/using_custom_views_in_a_layout

Die Konstruktoren der TwoDScrollView-Klasse sehen folgendermaßen aus:

public TwoDScrollView(Context context) 
    : base(context)
{
    initTwoDScrollView();
}

public TwoDScrollView(Context context, IAttributeSet attrs) 
    : base(context, attrs)
{
    initTwoDScrollView();
}

public TwoDScrollView(Context context, IAttributeSet attrs, int defStyle) 
    : base(context, attrs, defStyle)
{
    initTwoDScrollView();
}

In der C # -Version gibt es die gleichen Konstruktoren wie in der Java-Version (diese finden Sie unter dem obigen Link). Irgendeine Idee, was schief gehen könnte? Ich kann den vollständigen C # -Code meines TwoDScrollView posten, wenn jemand dies sehen möchte. Es ist im Wesentlichen das Gleiche wie der Java-Code Bit für Bit - außer, dass er in C # umgeschrieben wurde.

Danke für jede Hilfe!

Antworten auf die Frage(4)

Ihre Antwort auf die Frage