ANDROID STUDIO中 实现 框中数字家个输入时语音逐个提示,并且 可以根据两个数字 是否相等 语音提示【正确】或【错误】
还有其他几个语音提示【通讯失败】【该表号已存在】【是否重新编号】等。
请问在ANDROID STUDIO 中如何实现这些功能。谢谢大家
1、 在你的Android Studio项目中添加语音识别API和TTS引擎的依赖库。
2、创建一个EditText视图,用于用户输入数字。
3、使用语音识别API监听EditText视图中的输入,并将每个数字转换为文本。
4、使用TTS引擎逐个提示每个数字,以便用户可以确认他们正确地输入了数字。
5、当用户完成输入时,比较两个数字是否相等。如果相等,则使用TTS引擎提示“正确”,否则提示“错误”。
6、如果通讯失败或表号已存在等情况发生,则使用TTS引擎进行相应的提示。
错误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"