Я пытаюсь реализовать перетаскивание, чтобы создать грамматическое упражнение, в котором вы должны дополнить предложение правильным словом, перетаскивая правильный ответ в нужное место (как показано на рисунке ниже).
Я пытался добиться этого с помощью пользовательского средства визуализации, создавая некоторые расширенные собственные представления, которые переопределяют методы для реализации их перетаскивания (например, OnTouchEvent
для Android, и TouchesBegan
, TouchesMoved
, TouchesEnded
для iOS). На обеих платформах я могу перетаскивать пользовательские собственные представления, но только в iOS я могу перетащить их в указанное c назначение назначения, которое мне нужно. В Android это, кажется, конфликтует с координатами вида форм Xamarin и собственными Android координатами, используемыми в пользовательском рендере android. Даже если я пытаюсь их «подкорректировать» (вручную вставляя координаты, в которые я хочу добавить вид), кажется, что проверка if(destinationRect.Contains(myTouchX, myTouchY)
не работает должным образом.
Git пример репозитория здесь: Git пример
Кто-нибудь знает, как это решить? Или кто-нибудь знает, как реализовать перетаскивание (с соответствующей проверочной зоной) любым другим простым способом?