Я использовал CarouselViewControl (https://github.com/alexrainman/CarouselView) в Xamarin.Forms с Моим пользовательским просмотром. Мой пользовательский просмотр был расширен Contentview и был добавлен Pinch & Pan Gesture Recgnizer. Контент пользовательского представления - Управление изображениями в формах. Iхотел скользить, панорамировать и масштабировать галерею изображений. Производительность жестов (пинч и масштабирование) была хорошей. Итак, я добавил CarouselViewControl для параметра скольжения. Но CarouselViewControl заблокировал жест моего пользовательского представления. Я не знаю, почему заблокировал мой жест-Recognizer.
Я зарегистрировал Recognizers в конструкторе
класс Android_ZoomViewer: ContentView
{
....
public Android_ZoomViewer (){
PinchGestureRecognizer pinchGesture = new PinchGestureRecognizer();
pinchGesture.PinchUpdated += PinchGesture_PinchUpdated;
GestureRecognizers.Add(pinchGesture);
var panGesture = new PanGestureRecognizer();
panGesture.PanUpdated += OnPanUpdated;
GestureRecognizers.Add(panGesture);
}
}
в CarouselPage.xaml.cs
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class CarouselPage : ContentPage
{
public CarouselPage()
{
InitializeComponent();
var carousel = new CarouselViewControl ();
ObservableCollection<Android_ZoomViewer> list= new ObservableCollection<Android_ZoomViewer>();
hymn.Add(new Android_ZoomViewer() { Content = new ImageView() });
hymn.Add(new Android_ZoomViewer() { Content = new ImageView() });
hymn.Add(new Android_ZoomViewer() { Content = new ImageView() });
((ImageView)hymn[0].Content).SetBinding(Image.SourceProperty,"img1");
((ImageView)hymn[1].Content).SetBinding(Image.SourceProperty, "img2");
((ImageView)hymn[2].Content).SetBinding(Image.SourceProperty, "img3");
carousel.ItemsSource = list;
inCarouselView, мой жест заблокирован ...