以编程方式在iOS上更改键盘类型无效。

27
我希望您能够在用户按下回车键后将键盘类型从默认更改为数字。但是,设置keyboardType属性后什么也没有发生。
我的代码:

我想要在用户按下回车键后将键盘类型从默认更改为数字。但是在设置了keyboardType属性之后却没有任何反应。

我的代码:

-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [textField setKeyboardType:UIKeyboardTypeNumbersAndPunctuation];

    return YES;
}

我已经将自己设置为文本字段的代理,并且在按下回车键后调用了该方法。

编辑:已解决

-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [textField setKeyboardType:UIKeyboardTypeNumbersAndPunctuation];
    [textField reloadInputViews];
    return YES;
}

https://dev59.com/v2w05IYBdhLWcg3wVgam - Rushabh
你可能想尝试一下这个问题中发布的解决方案:https://dev59.com/anI-5IYBdhLWcg3w9thw - henning77
可能是通过编程方式更改UITextField键盘类型的重复问题。 - Parth Patel
2个回答

27

试一下这个:

-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [textField setKeyboardType:UIKeyboardTypeNumbersAndPunctuation];
    [textField reloadInputViews];
    return YES;
}

@Kladimir 如果任何答案帮助并完美地回答了您的问题,您应该使用正确的标志在答案点和投票箭头下将其标记为“已接受”。 - Himanshu A Jadav

0
您可以在属性检查器下的“文本输入特征”部分中进行此操作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接