iOS 子视图超出父视图范围点击事件处理!
2016-07-19 11:19
513 查看
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
UIView *view = [super hitTest:point withEvent:event];
NSLog(@"1-----%f------%f",point.x,point.y);
// 将point的x,y从以self为坐标系转换到以self.fb为坐标系进行参考
CGPoint buttonPoint = [self.fb convertPoint:point fromView:self];
NSLog(@"2-----%f------%f",buttonPoint.x,buttonPoint.y);
if ([self.fb pointInside:buttonPoint withEvent:event]) {
return self.fb;
}
return view;
}
//两者一样
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
UIView *view = [super hitTest:point withEvent:event];
if (view == nil) {
CGPoint tempoint = [self.senderBtn convertPoint:point fromView:self];
if (CGRectContainsPoint(self.senderBtn.bounds, tempoint))
{
view = self.senderBtn;
}
}
return view;
}
{
UIView *view = [super hitTest:point withEvent:event];
NSLog(@"1-----%f------%f",point.x,point.y);
// 将point的x,y从以self为坐标系转换到以self.fb为坐标系进行参考
CGPoint buttonPoint = [self.fb convertPoint:point fromView:self];
NSLog(@"2-----%f------%f",buttonPoint.x,buttonPoint.y);
if ([self.fb pointInside:buttonPoint withEvent:event]) {
return self.fb;
}
return view;
}
//两者一样
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
UIView *view = [super hitTest:point withEvent:event];
if (view == nil) {
CGPoint tempoint = [self.senderBtn convertPoint:point fromView:self];
if (CGRectContainsPoint(self.senderBtn.bounds, tempoint))
{
view = self.senderBtn;
}
}
return view;
}
相关文章推荐
- iOS sdl使用
- iOS开发的10个奇袭
- iOS 关于适配
- iostream和iostream.h的区别 && VC中iostream的区别
- iOS蓝牙Ble开发
- iOS标准时间与时间戳相互转换
- DM814X A8核sysbios下不能访问外设地址(MMU的配置)
- IOS开发之由身份证号码提取性别的实现代码
- iOS中几种数据持久化方案
- iOS单例模式的官方写法
- iOS开发IPV6 被拒解决办法
- iOS开发单例模式的官方写法
- iOS将image转90,180,270度的方法
- iOS延时和取消延时
- iOS开发----Xcode7升级之后插件无法使用与不小心点击Skipbundle的解决办法【转载】
- -[NSBundle initWithURL:]: nil URL argument'
- iOS中的round/ceil/floorf函数略解
- iOS 继承&类方法
- iOS中View和layer的区别以及layer用法
- iOS 相关证书申请