如何以编程方式避免 iPhone/iPad 添加“.”输入 2 个连续空格时将 char 写入文本字段?

发布于 2024-10-31 02:55:22 字数 138 浏览 0 评论 0原文

当我在 iPhone/iPad 文本字段中输入两个或多个连续空格字符时,iOS 会添加一个“.”。最后输入的单词末尾有 char ,这是我通常不想要的。 我想我已经禁用了 Interface Builder 中文本字段的所有类型的“自动更正控件”,但没有运气。

When I type two or more consecutive space chars into an iPhone/iPad textfield, iOS adds a '.' char at the end of the last typed word, which is something I don't usually want.
I think I've disabled all kind of "automatic correction controls" for my textfields inside Interface Builder, but no luck.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

友谊不毕业 2024-11-07 02:55:22

在这个方法中:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)

而不是返回YES
这样做:

return !(range.location > 0 && 
             [string length] > 0 &&
             [[NSCharacterSet whitespaceCharacterSet] characterIsMember:[string characterAtIndex:0]] &&
             [[NSCharacterSet whitespaceCharacterSet] characterIsMember:[[textField text] characterAtIndex:range.location - 1]]);

}

In this method:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)

instead of return YES
do this:

return !(range.location > 0 && 
             [string length] > 0 &&
             [[NSCharacterSet whitespaceCharacterSet] characterIsMember:[string characterAtIndex:0]] &&
             [[NSCharacterSet whitespaceCharacterSet] characterIsMember:[[textField text] characterAtIndex:range.location - 1]]);

}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文