gpt4 book ai didi

iphone - UIView只接受特定区域的触摸

转载 作者:行者123 更新时间:2023-11-29 04:35:07 26 4
gpt4 key购买 nike

我有一个 UIView,我正在根据touchesBegan 和touchesMoved 渲染UIBezierPath。但我只想在 UIVIew 内的某个区域进行绘制。我想在 UIView 中设置一个 CGRect,其中仅注册触摸。该区域之外的任何触摸都不会被记录。

理想情况下,如果用户将鼠标拖动到此矩形之外,他们可以继续按住触摸,但当他们拖动回该区域时,将调用 TouchesBegan 方法。

谁能帮忙解决这个问题吗?谢谢。

最佳答案

使用 pointInside:withEvent: 告诉它如果该点位于区域之外则不接受该点。

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event{
return [self isPointWithinMyBounds:point];
}

- (BOOL) isPointWithinMyBounds:(CGPoint) point{
//determine if the point is within the rect
return NO;
}

touchesMoved 事件将是一个复杂的事件。您只需在 View 之外停止绘制即可。

但这应该可以达到您想要的效果。

关于iphone - UIView只接受特定区域的触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11163988/

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