ios:如何检测语音听写是否用于UITextField?或者在键盘上轻敲麦克风按钮

Ber*_*rgP 3 iphone keyboard uiview voice-recognition ios

如何检测UITextField是否使用了语音听写?或者在键盘上轻敲麦克风按钮.有没有办法做到这一点?

在此输入图像描述

Bam*_*rld 5

UITextField符合UITextInput协议 (在"使用听写"一节中是感兴趣的方法). 在这个协议中是一个方法dictationRecordingDidEnd,你可以覆盖.

一种方法是将UITextField子类化,并从UITextInput协议实现上述方法和任何其他感兴趣的方法.

示例子类.h

#import <UIKit/UIKit.h>

@interface BWDictationTextField : UITextField

@end
Run Code Online (Sandbox Code Playgroud)

.M

#import "BWDictationTextField.h"

@implementation BWDictationTextField
     - (void)dictationRecordingDidEnd {
          NSLog(@"%s", __PRETTY_FUNCTION__);
     }// done is pressed by user after dictation
@end
Run Code Online (Sandbox Code Playgroud)

不幸的是,没有记录的方法来检测麦克风按钮的实际敲击(听写确实开始).