在android studio项目中添加 语音提示功能

ANDROID STUDIO中 实现 框中数字家个输入时语音逐个提示,并且 可以根据两个数字 是否相等 语音提示【正确】或【错误】

还有其他几个语音提示【通讯失败】【该表号已存在】【是否重新编号】等。

请问在ANDROID STUDIO 中如何实现这些功能。谢谢大家

1、 在你的Android Studio项目中添加语音识别API和TTS引擎的依赖库。

2、创建一个EditText视图,用于用户输入数字。

3、使用语音识别API监听EditText视图中的输入,并将每个数字转换为文本。

4、使用TTS引擎逐个提示每个数字,以便用户可以确认他们正确地输入了数字。

5、当用户完成输入时,比较两个数字是否相等。如果相等,则使用TTS引擎提示“正确”,否则提示“错误”。

6、如果通讯失败或表号已存在等情况发生,则使用TTS引擎进行相应的提示。

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7491862
  • 你也可以参考下这篇文章:Android studio实现调用相机实现拍照、录像、读取相册并展示在新的页面的功能
  • 除此之外, 这篇博客: android studio开发笔记中的 本类容主要是记录个人在android开发时的一些问题解决和易忘知识点的记录。内容可能有点乱,希望读者不要骂,谢谢。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 错误1:
    当在android studio上build项目时,提示错误:“你的主机中的软件中止了一个已建立的连接。”
    解答:这个错误是你的电脑没连网。连上网就好了

    错误2:无法创建新的activity
    在创建Activity的时候总是会显示灰色,并提示require minSDK>=16
    在这里插入图片描述
    解决:在build.gradle里将minSdkVersion改为大于16的值就行了
    在这里插入图片描述
    知识点:相对布局
    在这里插入图片描述
    在这里插入图片描述
    知识点:捕捉系统返回键,并且连续两次点击才退出。注意:exitTime是全局变量

    //捕捉系统返回键,并且连续点击2次才退出
        @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
    
            if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
                if((System.currentTimeMillis() - exitTIme) > 2000){
                    Toast.makeText(this, "再按一次返回键退出程序", Toast.LENGTH_SHORT).show();
                    exitTIme = System.currentTimeMillis();
                }else {
                    finish();
                    System.exit(0);
                }
                return true;
            }
            return super.onKeyDown(keyCode, event);
        }
    

    知识点:EditText中hint属性:
    1、设置内边距用padding
    2、设置字体颜色textColorHint

    知识点:进度条ProgressBar

    知识点:拖动跳SeekBar

    知识点:String与int互转
    Int类型转换为 String类型:
    String s=String.valueOf(i);

    String类型转化为Int类型:
    1)Int i=Integer.parseInt(s);

    知识点:单选按钮:RadioButton
    多选按钮:CheckBox

    知识点:d动态设置hint字体的大小。在xml中没有单独的属性可以直接设置hint字体的大小,但可以在代码中动态设置。

    public void setHintSize(EditText et, String hintInfo){
            SpannableString s = new SpannableString(hintInfo);
            AbsoluteSizeSpan textSize = new AbsoluteSizeSpan(13, true);
            s.setSpan(textSize, 0, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
            et.setHint(s);
        }
    

    知识点:活动收集器,
    应用场景:需要直接重某个页面退出程序,而不是退回到该页面的页面

    public class ActivityCollector {
    
        //活动收集列表
        public static List<Activity> activityList = new ArrayList<>();
    
        //收集活动
        public static void addActivity(Activity activity){
            activityList.add(activity);
        }
    
        //移除活动
        public static void removeActivity(Activity activity){
            activityList.remove(activity);
        }
    
        //关闭所有在集合中的Activity
        public static void finishAll(){
            for(Activity activity : activityList){
                //如果活动没有结束,则结束它
                if(!activity.isFinishing()){
                    activity.finish();
                }
            }
            //清空活动列表
            activityList.clear();
        }
    }
    

    知识点:去掉Button自带的背景色:
    在xml的Button中添上下面这一句,就能去掉默认背景色

    app:backgroundTint="@null"