Android开发之语音朗读

老年人刷新闻两宝:字体放大跟语音朗读,今天我们往项目中加入语音朗读的功能。

第一步 声明并实例化TextToSpeech
lateinit var tts: TextToSpeech
tts = TextToSpeech(this@HeadLineDetailActivity, this)
第二步 设置监听
class HeadLineDetailActivity :OnInitListener{}
override fun onInit(status: Int) {
    // 判断是否转化成功
    if (status === TextToSpeech.SUCCESS) {
        //默认设定语言为中文,原生的android貌似不支持中文。
        val result = tts.setLanguage(Locale.CHINESE)
        if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED) {
            ToastUtils.normal("转换中文失败,语言包丢失或语音不支持")
        } else {
            //不支持中文就将语言设置为英文
            tts.language = Locale.US
        }
    }
}
第三步 开始阅读
 tts.speak(tv_content.text.toString(), TextToSpeech.QUEUE_FLUSH, null)
 此处选取的文本框的内容进行朗读
注意事项
  override fun onDestroy() {
    super.onDestroy()
    tts.shutdown()
}

关闭当前Activity时要释放内存
此功能是直接调用的Android系统的功能,无需集成其他插件,在设置中可直接搜索tts来进行语音朗读的配置
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值