AVSpeechSynthesizerDelegate
Наследование
Не применимый
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 7.0 и позже.
AVSpeechSynthesizerDelegate протокол определяет методы что делегат AVSpeechSynthesizer объект может реализовать; все методы в этом протоколе являются дополнительными. Можно реализовать эти методы для ответа на события, происходящие во время синтеза речи.
Сообщения делегата отправляются синтезатором за тремя категориями событий:
Когда речевые паузы или резюме
Когда синтезатор запускает или заканчивает говорить блок текста (как инкапсулируется
AVSpeechUtteranceобъект)Поскольку синтезатор производит каждую отдельную единицу речи
Для третьего случая можно реализовать speechSynthesizer:willSpeakRangeOfSpeechString:utterance: обеспечить пользовательский интерфейс, в котором явно выделяется каждое слово, поскольку на нем говорят.
-
Когда синтезатор отменил разговор произнесения, говорит делегату.
Объявление
Swift
optional func speechSynthesizer(_synthesizer: AVSpeechSynthesizer!, didCancelSpeechUtteranceutterance: AVSpeechUtterance!)Objective C
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizerdidCancelSpeechUtterance:(AVSpeechUtterance *)utteranceПараметры
synthesizerСинтезатор, говоря произнесение, которому применяется к это сообщение.
utteranceПроизнесение, во время которого была отменена речь.
Обсуждение
Это сообщение отправляется, только если речь останавливается (использование
stopSpeakingAtBoundary:метод), в то время как говорят на произнесении. Это не отправляется, если синтезатор находится в настоящее время в задержке между произнесением, когда останавливается речь. Это сообщение, в настоящее время отправляется только за произнесением говорясь, не за произнесением все же, чтобы быть обработанным.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
Когда синтезатор продолжил говорить произнесение, будучи приостановленным, говорит делегату.
Объявление
Swift
optional func speechSynthesizer(_synthesizer: AVSpeechSynthesizer!, didContinueSpeechUtteranceutterance: AVSpeechUtterance!)Objective C
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizerdidContinueSpeechUtterance:(AVSpeechUtterance *)utteranceПараметры
synthesizerСинтезатор, говоря произнесение, которому применяется к это сообщение.
utteranceПроизнесение, на котором говорят.
Обсуждение
Это сообщение отправляется на возобновляющуюся речь, только если речь была приостановлена (использование
pauseSpeakingAtBoundary:метод), в то время как говорили на произнесении. Если синтезатор был приостановлен во время задержки между произнесением, это не отправляется.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
Когда синтезатор закончил говорить произнесение, говорит делегату.
Объявление
Swift
optional func speechSynthesizer(_synthesizer: AVSpeechSynthesizer!, didFinishSpeechUtteranceutterance: AVSpeechUtterance!)Objective C
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizerdidFinishSpeechUtterance:(AVSpeechUtterance *)utteranceПараметры
synthesizerСинтезатор, говоря произнесение, которому применяется к это сообщение.
utteranceПроизнесение, закончившее говориться.
Обсуждение
Когда речь заканчивается, это сообщение сразу отправляется; это не отложено если заключительное произнесение
postUtteranceDelayбольше, чем нуль.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
Когда синтезатор приостановился при разговоре произнесения, говорит делегату.
Объявление
Swift
optional func speechSynthesizer(_synthesizer: AVSpeechSynthesizer!, didPauseSpeechUtteranceutterance: AVSpeechUtterance!)Objective C
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizerdidPauseSpeechUtterance:(AVSpeechUtterance *)utteranceПараметры
synthesizerСинтезатор, говоря произнесение, которому применяется к это сообщение.
utteranceПроизнесение, на котором говорят.
Обсуждение
Это сообщение отправляется, только если речь приостанавливается (использование
pauseSpeakingAtBoundary:метод), в то время как говорят на произнесении. Если синтезатор в настоящее время находится в задержке между произнесением когда речевые паузы, это не отправляется.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
Когда синтезатор начал говорить произнесение, говорит делегату.
Объявление
Swift
optional func speechSynthesizer(_synthesizer: AVSpeechSynthesizer!, didStartSpeechUtteranceutterance: AVSpeechUtterance!)Objective C
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizerdidStartSpeechUtterance:(AVSpeechUtterance *)utteranceПараметры
synthesizerСинтезатор, говоря произнесение, которому применяется к это сообщение.
utteranceПроизнесение, начавшее говориться.
Обсуждение
Если значение произнесения
preUtteranceDelayсвойство больше, чем нуль, сообщение не отправляется, пока время задержки не передало, и речь фактически началась.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
-
speechSynthesizer (_: willSpeakRangeOfSpeechString:utterance:) - speechSynthesizer:willSpeakRangeOfSpeechString:utterance:Когда синтезатор собирается говорить часть текста произнесения, говорит делегату.
Объявление
Swift
optional func speechSynthesizer(_synthesizer: AVSpeechSynthesizer!, willSpeakRangeOfSpeechStringcharacterRange: NSRange, utteranceutterance: AVSpeechUtterance!)Objective C
- (void)speechSynthesizer:(AVSpeechSynthesizer *)synthesizerwillSpeakRangeOfSpeechString:(NSRange)characterRangeutterance:(AVSpeechUtterance *)utteranceПараметры
synthesizerСинтезатор, говоря произнесение, которому применяется к это сообщение.
characterRangeДиапазон символов в произнесении
speechStringсоответствие единице речи, собирающейся говориться.utteranceПроизнесение, в настоящее время говорясь.
Обсуждение
Поскольку это сообщение делегата отправляется один раз за каждой единицей речи (обычно, слово) в тексте произнесения, можно использовать его в таких целях как выделение каждого слова на экране, поскольку на этом говорят.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 7.0 и позже.
