pickerView滚动停止的时候才能点击确定,滚动过程和滚动减速不能点击确定按钮,否则选择数据不准确。我是在做地址选择的时候发现这个问题,我们只需要循环遍历pickerView的子view是否正在拖拽或者滚动就可以了。
话不多说,直接贴代码了
- (BOOL)anySubViewScrolling:(UIView *)view{
if ([view isKindOfClass:[UIScrollView class]]) {
UIScrollView *scrollView = (UIScrollView *)view;
if (scrollView.dragging || scrollView.decelerating) {
return YES;
}
}
for (UIView *theSubView in view.subviews) {
if ([self anySubViewScrolling:theSubView]) {
return YES;
}
}
return NO;
}
我们只需要在点击确定按钮的时候调用这个方法判断一下就可以了
- (IBAction)confirmBtnPressed:(id)sender {
if ([self anySubViewScrolling:self.addressPickerView] ) {
return;
}
//确定按钮的操作。。。
}
到这里就解决了,喜欢的关注我!有问题可以直接留言或者私信我!