美文网首页
解决IOS隐藏tabBar导致底部视图无法响应(转载)

解决IOS隐藏tabBar导致底部视图无法响应(转载)

作者: xin的每一天 | 来源:发表于2020-12-14 13:22 被阅读0次

系统UIViewController中的view的区域大小是不包括tabBar底部范围的,所以在隐藏tabBar时,子视图要是超过了UIViewController中的view的范围会导致其点击事件不能响应

解决方案

在自定义的view中重写点击区域方法

@implementationXJShopBaseView-(UIView*)hitTest:(CGPoint)point withEvent:(UIEvent*)event{if(!self.isUserInteractionEnabled||self.hidden||self.alpha==0){returnnil;}for(UIView*subViewin[self.subviews reverseObjectEnumerator]){CGPoint convertedPoint=[subView convertPoint:point fromView:self];UIView*hitView=[subView hitTest:convertedPoint withEvent:event];if(hitView){returnhitView;}}returnself;}@end

使用自定义的UIView替换UIViewController的view

-(void)viewDidLoad{[superviewDidLoad];//替换系统自带的self.viewXJShopBaseView*baseView=[[XJShopBaseView alloc]initWithFrame:self.view.bounds];self.view=baseView;}

作者:程时鑫

链接:https://www.jianshu.com/p/b2cb3028a277

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章

网友评论

      本文标题:解决IOS隐藏tabBar导致底部视图无法响应(转载)

      本文链接:https://www.haomeiwen.com/subject/ivwkuxtx.html