3

我正在使用将键盘移开的滚动视图的子类。( TPKeyboardAvoidingScrollView)

我认为这与我对下一个和上一个按钮的实现相冲突。我已经建立了一个 inputaccessoryview

我有一个为每个字段设置下一个和上一个文本字段的类别

当我编辑文本字段时,我设置了当前、上一个和下一个文本字段

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
    _currentTextField = textField;
    _prevTextField = [textField prevTextField];
    _nextTextField = [textField nextTextField];

    return YES;
}

当他们单击下一个或上一个时,我调用此方法

- (void)selectAdjacentResponder:(id)sender{
    UISegmentedControl *segmented = sender;
    if(segmented.selectedSegmentIndex == 0){
        [_prevTextField becomeFirstResponder];
    } else {
        [_nextTextField becomeFirstResponder];
    }
}

这很好用.. 但是当我关闭键盘时。我的滚动视图搞砸了。如果我添加该行

[_currentTextField resignFirstResponder];

到我的 selectadjacent 方法的第一行,它解决了这个问题。但问题是它以一种时髦的方式使屏幕聚焦,因为我同时关闭并访问下一个文本字段。

当我关闭键盘时,我曾尝试让第一响应者辞职。但我认为我的滚动视图是在那之前计算的..知道该怎么做=/

4

0 回答 0