xamarin - 我的 CarouselViewControl 在 ItemSource 中阻止捏合和平移手势
问题描述
我在 Xamarin.Forms 中使用了带有我的自定义视图的CarouselViewControl ( https://github.com/alexrainman/CarouselView )。我的自定义视图扩展了 Contentview 并添加了 Pinch & Pan Gesture Recgnizer。custom-view 的内容是表单中的图像控件。我想滑动、平移和缩放图片库。手势性能(捏合和缩放)很好。所以,我为滑动选项添加了 CarouselViewControl。但是,CarouselViewControl 阻止了我的自定义视图的手势我不知道为什么阻止了我的手势识别器。
我在构造函数中注册了识别器
类 Android_ZoomViewer : 内容视图
{
……
公共 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;
在 CarouselView 中,我的手势被阻止...
解决方案
推荐阅读
- pine-script - 在 TradingView 中获取周期范围
- c++ - C++ 中的 make_pair()
- java - 我如何返回一个 jsp 作为来自这个 servlet 的响应?
- woocommerce - 在 ionic 4 应用程序中实现 Razorpay 订单 API?
- javascript - Multikeypress不能正常工作唱JS
- java - org.codehaus.jackson.JsonParseException:响应元素中无法识别的字段'_transferSize',同时通过java读取HAR文件
- javascript - PHP - 创建指定文件夹的目录列表
- c# - Selenium C#如何查找图像的元素?
- git - 'git log' 是否使用深度优先搜索遍历来显示提交?
- google-cloud-platform - Cloud Scheduler 不尊重我的超时设置(编辑:与 CloudRun 无关)