MonoDroid: ошибка при вызове конструктора пользовательского представления - TwoDScrollView

Я создаю приложение для Android, которое использует пользовательский TwoDScrollView, найденный здесь:

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

Этот же класс можно найти на нескольких других веб-сайтах, а другие в Stack Overflow задают вопросы по этому поводу. Я использовал его в предыдущем приложении Android, которое создавал с использованием Java / Eclipse, и у меня был успех.

С моим текущим приложением я хотел использовать C # и MonoDroid. Я решил переписать весь класс TwoDScrollView в C #. После его переписывания и последующего использования в каком-то макете XML я получаю следующие исключения при попытке запустить мой код:

System.NotSupportedException было сгенерировано. Невозможно активировать экземпляр типа MyProject.TwoDScrollView из собственного дескриптора 44f4d310.

System.Exception: не найден конструктор для MyProject.TwoDScrollView ::. Ctor (System.IntPtr, Android.Runtime.JniHandleOwnership) ...... с дополнительным текстом, который следует ....

Мой макет XML выглядит следующим образом:

<?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>

Выполните инструкции по приведенной ниже ссылке на использование пользовательских представлений в макете XML в MonoDroid:http: //docs.xamarin.com/android/advanced_topics/using_custom_views_in_a_layou

Конструкторы класса TwoDScrollView выглядят следующим образом:

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();
}

В версии C # существуют те же конструкторы, что и в версии Java (которую вы можете найти по ссылке выше). Есть идеи, что может пойти не так? Я могу опубликовать полный код C # моего TwoDScrollView, если кто-то захочет его увидеть. По сути, это то же самое, что битовый код Java, за исключением того, что переписан на C #.

Спасибо за любую помощь!

Ответы на вопрос(4)

Ваш ответ на вопрос