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

时间:2016-07-13 08:26:10

标签: ios swift watchkit watch-os-2 dictation

我编写代码在我的苹果手表上使用听写。我使用presentTextInputControllerWithSuggestions而没有建议直接开始听写。

但是,我有两个问题:

  • 我想在我的应用开始时开始听写。为此,我在willActivate方法中调用了我的函数,但是这样,我的屏幕上只显示一个等待的图像,而不是我的第一页带有听写。
  • 我想在没有按下的情况下停止听写"完成"按钮。我不知道它是否可能,我怎么能做到这一点。

有我的代码:

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

你有解决方案吗?

1 个答案:

答案 0 :(得分:0)

感谢您的帮助@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

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

当用户停止说话时,您是否有停止听写的想法?