Skip to content

Instantly share code, notes, and snippets.

@yektasarioglu
Created October 30, 2020 15:53
Show Gist options
  • Save yektasarioglu/be72b541e052e4485f10ebabc647aa64 to your computer and use it in GitHub Desktop.
Save yektasarioglu/be72b541e052e4485f10ebabc647aa64 to your computer and use it in GitHub Desktop.
Trigger TTSEngine's speak() method
private fun initializeUI() {
binding?.apply {
voiceSpeedSlider.addOnChangeListener { _, value, _ ->
voiceSpeed = value
isDefaultSpeedValueExceeded = value > 1f
}
maleRadioButton.setOnClickListener {
isMale = true
languageRadioGroup.clearCheck()
}
femaleRadioButton.setOnClickListener {
isMale = false
languageRadioGroup.clearCheck()
}
chRadioButton.setOnClickListener {
languageCode = CHINESE_LANGUAGE_CODE
showMale()
}
enRadioButton.setOnClickListener {
languageCode = ENGLISH_LANGUAGE_CODE
showMale()
}
frRadioButton.setOnClickListener {
languageCode = FRENCH_LANGUAGE_CODE
hideMale()
toast(NO_MALE_INFO)
}
// Calling setOnClickListener() for the other radio buttons just like frRadioButton as well
ttsButton.setOnClickListener {
if (binding?.ttsFieldEditText?.text?.toString()!!.isEmpty()) toast("Empty TTS text field !!")
if (languageRadioGroup.checkedRadioButtonId == -1)
toast("Select language first")
else {
changeTTSConfiguration(isMale, languageCode, voiceSpeed)
if (isDefaultSpeedValueExceeded)
toast("You've exceeded default voice speed value(1.0)")
speak(binding?.ttsFieldEditText?.text?.toString()!!)
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment