gpt4 book ai didi

iOS取消某些地区的触摸事件

转载 作者:行者123 更新时间:2023-11-28 22:56:54 25 4
gpt4 key购买 nike

有没有办法取消 View 特定区域的触摸事件?我有一个自定义 UIView,我只想处理距离屏幕边缘 100 像素的触摸事件。

最佳答案

正如 Justin 所说,在界面生成器中(或以编程方式)添加自定义 UIView 并将其添加到 View 中。我们称该 View 为 touchArea。然后在你的 Viewcontroller.m 文件中,实现

-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
-(void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
-(void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event

方法(取决于你想做什么),在这些方法中:

    UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:self.view];
if (CGRectContainsPoint(touchArea.frame, location)) {

//code to execute

}

实际上,我认为即使将 CGRect 作为实例变量放置在 View 上也可以工作,但以上是我实现它的方法。

关于iOS取消某些地区的触摸事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10592188/

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