@implementation TempView
{
BOOL isSelfTouche;
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
if(isSelfTouche)
[self removeFromSuperview];
}
#pragma mark - hitTest
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
UIView *touchedView = [super hitTest:point withEvent:event];
if(!touchedView)
{
NSLog(@"hitTest:touchedView == nil");
return nil;
}
//NSLog(@"%@ tag:%d",[touchedView class], [touchedView tag]);
//if(touchedView.tag == 1234)return self;
isSelfTouche = NO;
//if([touchedView isMemberOfClass:[TempView class]])
if(touchedView == self)isSelfTouche = YES;
return touchedView;
}
@endhitTest:withEvent:截获子视图消息
自定义视图的触摸事件处理与碰撞检测
最新推荐文章于 2022-03-28 17:39:48 发布
本文详细介绍了如何在自定义视图中实现触摸事件的处理与碰撞检测,包括视图移除、触摸事件响应及碰撞检测逻辑。
2564

被折叠的 条评论
为什么被折叠?



