iOS开发之scrollview上添加table或者collect的交互问题

#####view的显示
环境:xib上添加了scrollview ,scrollview上又添加了tableview
添加的正确步骤为:xibView --> scrollview --> 背景view --> tableview.
问题1:scrollview只可滑动全屏大小,但是下面的视图使劲拖拽也能看到
答:加载xib的时候,xib的大小设置的不对,应该直接设置全屏大小;
问题2:scrollview显示不正确
答:在xib上拉scrollview的时候,scrollview的约束为:距左距右距上距下都为0,backview的约束也是一样,不过多加了两条,一条为你想要的scrollview的高度,一条为距离scrollview的centerX

#####点击方法
如果在scrollview上添加了table或者collect,你会发现他们的didselect方法不走,不光这个,可能其他子view的action也不走

这时候你需要:
- (void)addTap{
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tap:)];
tap.delegate = self;
[self.backScroll addGestureRecognizer:tap];
}
- (void)tap:(UITapGestureRecognizer *)tap{
[self endEditing:YES];
}

  - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
   {
 if ([NSStringFromClass([touch.view class])     isEqualToString:@"UITableViewCellContentView"])
{
    return NO;
}
return YES;

}

如果发现此方法不走,或者获取到的touch.view class 不是tableview是scrollview,一定是frame设置的不对,我这里还是用xib写的…高度有800度…一个不注意就成了自己坑自己,希望看到这篇文章的小伙伴不会像我一样自己坑自己…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值