AVSpeechUtterance - Swift - 用短语初始化

Sha*_*DES 7 swift xcode6 ios8

所以我只想尝试使用Swift的AVSpeechSynthesizer.我无法弄清楚如何为AVSpeechUtterance设置短语.

@IBAction func buttonSpeakClicked(sender:UIButton)
    {
        var mySpeechSynthesizer:AVSpeechSynthesizer = AVSpeechSynthesizer()
        var myString:String = "This is the phrase to say"
        var mySpeechUtterance:AVSpeechUtterance = AVSpeechUtterance(string:myString)

        println("\(mySpeechUtterance.speechString)")
        println("My string - \(myString)")

        mySpeechSynthesizer .speakUtterance(mySpeechUtterance)
    }
Run Code Online (Sandbox Code Playgroud)

第一次打印 - 没有

第二个println - 这就是要说的那句话

文档说init(字符串字符串:String!),但我无法弄清楚将它放在何处

vla*_*f81 5

代码很好,语音字符串设置正确.但问题是AVSpeechUtterance在iOS 8 Beta上没有按预期工作.我建议在这里提交错误报告.

该代码在iOS 7.1设备和模拟器上正常工作.

  • 是的,看起来有点怪异.如果你构造一个带有任何类型字符串的AVSpeechUtterance,据我所知,你会得到"nil".如果你构造它没有参数,它工作正常,你得到一个对象,但当然你不能设置语音字符串,因为speechString属性是只读的. (2认同)