gpt4 book ai didi

c# - 在 Monotouch 中检测 UIPageViewController 中控件的触摸事件

转载 作者:行者123 更新时间:2023-11-29 11:17:10 24 4
gpt4 key购买 nike

UIPageViewControllerGestureRecognizers 覆盖的区域内,我的 ViewController 上有几个按钮。此区域中的点击由 UIPageViewController 使用,并且永远不会触及下面的按钮。

我读过 iPad - PageViewController - Show next view controller on button clickUIPageViewController Gesture recognizers并了解原理,但之前没有 Obj-C 经验,并且正在努力在 C# 中重新创建这些解决方案。

有人可以提供一个示例,说明如何在 MonoTouch 中完成此操作吗?

最佳答案

以下是您的第一个链接如何使用 MonoTouch 转换为 C#(注意:未尝试过)。

首先,您将为 UIGestureRecognizer 创建您自己的(非 .NET)委托(delegate),如下所示:

class MyUIGestureRecognizerDelegate : UIGestureRecognizerDelegate {

public override bool ShouldReceiveTouch (UIGestureRecognizer recognizer, UITouch touch)
{
return (!(touch.View is UIControl));
}
}

如果触摸手势不适用于 UIControl(包括按钮),它将返回 true

然后您需要将此委托(delegate)分配给分配给您的UIPageViewControllerGestureRecognizers

MyUIGestureRecognizerDelegate del = new MyUIGestureRecognizerDelegate ();

UIPageViewController pvc = new UIPageViewController ();

foreach (var gr in pvc.GestureRecognizers)
gr.Delegate = del;

这让您可以调整手势的解释方式。如果手势本身不处理,则应将其路由到您自己的控件/按钮。

关于c# - 在 Monotouch 中检测 UIPageViewController 中控件的触摸事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8933708/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com