Intereting Posts
NullPointerException в HandlerThread Ошибка Android JSon «Ожидаемый BEGIN_OBJECT, но был BEGIN_ARRAY в строке 1 столбца 2» Android – Как удалить активность из последних приложений? Как дать эффект постеризации при просмотре изображений? Как использовать дерево зависимостей Gradle для разрешения несоответствия версии библиотеки поддержки Android? Как получить направление камеры телефона с поддержкой GPS? Возможно ли добавление / удаление элементов из списка ListView с помощью CursorAdapter? Java.lang.RuntimeException: невозможно создать службу .GCMIntentService Scrollview чрезвычайно медленный на ics (android 4.0), когда содержит длинный текст Java.lang.NoClassDefFoundError: com.google.android.gms.R $ стиль для Android Подписание моего приложения для Android в качестве системного приложения Как добавить нижний колонтитул к дочернему списку в расширенииListActivity? ListView с алфавитами справа, как и iPhone. Является ли это возможным? Proguard дает мне много предупреждений и ошибок Sprite Вращение вокруг точки Andengine / Java

Аналоговый SetOnTouchListener или как он используется в xamarin, какой аргумент должен быть

Мне нужно использовать SetOnTouchListener:

LinearLayout cardLinearLayout = FindViewById<LinearLayout> (Resource.Layout.CardList); cardLinearLayout.SetOnTouchListener (this);//Can't use THIS, must be argument with IOnTouchListener type. Where can I get this argument? 

Введите описание изображения здесь

Я хочу использовать его для ViewFlipper. Возможно, существует и другой способ.

В Xamarin.Android многие интерфейсы Listener были преобразованы в events для большего количества кода типа C #.

Таким образом, на всех View s есть событие Touch которое соответствует тому, что происходит в OnTouchListener .

Однако, если вы действительно этого хотите, вы можете реализовать интерфейс IOnTouchListener следующим образом:

 public class MyOnTouchListener : Java.Lang.Object, View.IOnTouchListener { public bool OnTouch(View v, MotionEvent e) { /* do stuff */ } } 

И затем используйте его на LinearLayout следующим образом:

 cardLinearLayout.SetOnTouchListener (new MyOnTouchListener()); 

Вы можете сравнить это с событием Touch , которое занимает только одну строку кода:

 cardLinearLayout.Touch += (s, e) => { /* do stuff */ };