Аналоговый 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 */ };