0

我试图根据所选单位显示选择器或键盘。

对于公制,它是一个键盘,因此用户可以输入 300 克,而对于英制,它是一个选择器,因此用户可以选择 3 2/3 杯。

选择器显示,但我无法让键盘不显示。resignFirstResponder 不起作用 - 因为我认为它不是第一响应者。

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {

switch (_Unit) {
    case 1: // metric - show the keyboard
        [self unitHidePicker:nil];
        break;
        
    case 2: // oz & fl/oz
        
        [self unitShowPicker];
        [textField resignFirstResponder];
        break;

    case 3: // US Cups
        [self unitShowPicker];
        [textField resignFirstResponder];
        break;
}

return YES;
}
4

1 回答 1

0

最简单的方法,在显示 UIPickerview 时使用按钮,否则显示 textField。键盘显示隐藏是一团糟。您可以添加按钮和文本字段并切换显示它们并完成工作

或设置要在其中使用选择器Return NO; 的 case 循环内部

于 2013-02-14T06:49:03.053 回答