我的功能是在单击textField时打开选择器。我的文本框在滚动视图中,如下图所示。
我想在选择器打开时禁用滚动视图的用户交互。以下是我的代码。
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
[self.picker removeFromSuperview];
[self.toolBar removeFromSuperview];
textField.inputView = self.picker;
textField.inputAccessoryView = self.toolBar;
self.scrollview.userInterationEnabled = NO;
return YES;
}
当我评论userInteractionEnabled代码时。选择器完美打开。但是当我取消注释时,代码选择器没有打开。
我也延迟了这段代码。所以在dalay之后,我的选择器又被隐藏了。
答案 0 :(得分:1)
这里的问题是userInteractionEnabled从scrollView插入到textField。而且据解释here
如果我刚刚发现UITextField的userInteractionEnabled属性为NO,则它也将拒绝成为第一响应者。在必须接受第一响应者状态之前,我必须在文本字段上明确重新启用用户交互。
它不能显示textField的inputView。
您应确保您的textField userInteracationEnables为true或将pickerView移到textField.inputView之外。
答案 1 :(得分:0)