【问题标题】:Dictation button outside the keyboard键盘外的听写按钮
【发布时间】:2016-04-18 04:57:42
【问题描述】:

有没有办法在 iOS 键盘外单击按钮时执行听写。 例如:我有一个UITextField,右侧有麦克风按钮。单击此按钮时,它应该打开与在键盘内单击麦克风按钮时相同的对话框/视图。

【问题讨论】:

    标签: ios objective-c iphone swift ipad


    【解决方案1】:

    我已经对此进行了一段时间的研究,但还没有找到解决方案。

    您不能像在主屏幕的原生 iPhone 搜索栏中那样在键盘外触发麦克风按钮。这是一个私有 API,不可用于开发

    最好的替代方法是使用 Apple 在 iOS 10.0+ 中提供的 Speech 框架,并构建您自己的自定义 UI 以将语音转换为文本。

    希望这些信息对您有所帮助! :)

    【讨论】:

      【解决方案2】:

      UITextField 符合 UITextInput 协议(在使用听写部分下是感兴趣的方法)。在这个协议中有一个方法 dictationRecordingDidEnd,你可以覆盖它。

      一种方法是继承 UITextField 并从 UITextInput 协议实现上述方法和任何其他感兴趣的方法。

      示例子类 .h

      #import <UIKit/UIKit.h>
      
      @interface TextField : UITextField
      
      @end
      

      .m

      #import "TextField.h"
      
      @implementation TextField
      
      -(void)dictationRecordingDidEnd {
          NSLog(@"%s", __PRETTY_FUNCTION__);
      }// done is pressed by user after dictation
      
      @end
      

      【讨论】:

      • OP 询问是否可以在键盘外触发麦克风按钮操作。这个答案与问题无关。你说的是听写完成后回调。
      猜你喜欢
      • 2012-06-21
      • 2012-03-08
      • 1970-01-01
      • 2016-12-03
      • 1970-01-01
      • 2012-05-23
      • 1970-01-01
      • 2014-12-06
      相关资源
      最近更新 更多