如何在不按下按钮的情况下在 Apple Watch 中开始和停止听写

How to start and stop dictation in Apple Watch witout pressing button

我编写了代码以在我的 Apple Watch 上使用听写功能。我用presentTextInputControllerWithSuggestions 没有suggestions直接开始听写

但是,我有两个问题:

这是我的代码:

func dictation(){
        self.presentTextInputControllerWithSuggestions([], allowedInputMode: WKTextInputMode.Plain, completion:{
            (results) -> Void in
                 //myCode
            })
    }
override func willActivate(){
   super.willActivate()
   dictation()
}

你有解决办法吗?

感谢@Feldur 的帮助

我尝试了延迟,它似乎有效

这是我的代码:

override init(){
    super.init()
    print("start init")
    let seconds = 1.0
    let delay = seconds * Double(NSEC_PER_SEC)  // nanoseconds per seconds
    let dispatchTime = dispatch_time(DISPATCH_TIME_NOW, Int64(delay))
    dispatch_after(dispatchTime, dispatch_get_main_queue(), {
        self.dictation()
    })
    print("end init")
}

有我的日志:

start init
end init
start awakeWithContext
end awakeWithContext
start willactivate
end willactivate
start didAppear
end didAppear
start dictation

出现我的屏幕后,我的听写就开始了。

你有没有在用户停止说话时停止听写的想法?