【问题标题】:How do I know when user change from Alphabet to Numeric iOS我如何知道用户何时从 Alphabet 更改为 Numeric iOS
【发布时间】:2014-09-29 06:47:09
【问题描述】:

我想知道这个人在问什么how to detect when the iOS default keyboard type switches from text to numbers

我想知道如何知道用户何时从默认键盘的字母侧切换到数字侧。

我想要这样做的原因是,当用户从一个文本字段更改为下一个文本字段时,如果他们写的最后一件事是数字,我想保留数字侧。

而且我不能将 numbersAndPunctuation 键盘类型作为一个整体使用,因为它无法更改为 Emoji,而我仍然需要能够。 但是,如果我知道他们何时切换,我将能够从 NumbersAndPunctuation 开始,然后当用户切换时,我将能够将键盘类型更改为默认值,因此用户将能够切换到 Emoji。

或者在数字端启动默认键盘的能力。如果可以的话,这也是一个解决方案。

任何帮助将不胜感激:)

【问题讨论】:

  • 我认为您最好的选择是简单地使用最后输入的符号进行操作。如果用户输入了数字或点,逗号 - 那么你知道用户使用了数字。

标签: ios iphone keyboard


【解决方案1】:

这是我对“检测”keyboardType 的贡献。本质上,没有 API 可以得到你想要的。 https://stackoverflow.com/a/26095686/2719509

如何使用当前 API 获得您想要的功能。

  1. 用户在 [original] textField 中键入文本,更改 键盘,想转到下一个键盘
  2. 创建一个[新]文本字段,用用户的文本填充它 输入后,将其放置在与文本字段完全相同的位置 用户工作的地方
  3. 将 [original] textField 移动到 [next]textField,删除输入的文本并将其替换为 [下一个] 文本字段的文本。使 [next]textField.hidden = YES 直到用户转到 [next next] 文本字段。
  4. 重复 2 和 3。

在移动文本字段时不要使用动画。

诀窍是什么:保持键盘状态保持 textField 不变,让用户相信他在不同的 textField 中书写。

希望对你有帮助。

【讨论】:

  • 这个“hack”可能真的有用。如果它解决了我的问题,我会尝试并接受答案。谢谢:)
【解决方案2】:

在您的文本字段代表中添加if (textField.keyboardType = UIKeyboardTypeNumbersAndPunctuation)

【讨论】:

    【解决方案3】:

    试试这个,它将帮助您检测最后一个字符,使用它您可以识别键盘类型。 (目前打开的是哪种类型的键盘?)

    - (BOOL)textField:(UITextField *)field shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)characters{        
        if([characters rangeOfCharacterFromSet:[[NSCharacterSet decimalDigitCharacterSet] invertedSet]].location == NSNotFound){
            NSLog(@"decimalDigitCharacterSet");
        }else if([characters rangeOfCharacterFromSet:[[NSCharacterSet letterCharacterSet] invertedSet]].location == NSNotFound){
            NSLog(@"letterCharacterSet");
        }
        return YES;
    }
    

    它对我有用。希望这会对你有所帮助。

    【讨论】:

    • 如果用户添加空格或换行符怎么办?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-20
    • 1970-01-01
    • 2018-07-23
    • 1970-01-01
    • 1970-01-01
    • 2016-04-16
    • 2011-02-03
    相关资源
    最近更新 更多