0

我可以使用UITextViewDelegateNSNotificationCenter来检测用户何时点击字符键以Keyboard将文本输入到UITextView.

但是我的应用程序需要检测用户何时点击Shift key,我也想检测哪个Shift mode is activated. 这意味着我想检测用户何时输入小写、大写第一个字符或大写所有字符模式。

我搜索了很多,但找不到好的解决方案。请帮忙!

4

2 回答 2

2

一种可能的解决方案是植入您自己的自定义键盘(这也可能需要自定义文本视图),因为目前似乎没有公共 API 在 iOS 上公开此信息。

于 2013-05-27T22:52:19.057 回答
0

你不能对 A 到 Z 的键进行正则表达式检查吗?

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
    // check if string entered matches regular expression [A-Z]
    if(matchedRegularExpression)
    {
        NSLog(@"uppercase character detected");
    }    
    else
    {
        NSLog(@"lowercase character detected");
    }

    return true;
}
于 2013-05-25T13:29:18.350 回答