android触摸语音事件
16lz
2021-01-25
android中的各种事件是由各种不同的监听器来完成,比如按键事件是由OnClickListener实现监听,触摸是由OnTouchListener实现监听的。
首先设置监听,然后传入要监听的事件
public class Touch913MainActivity extends Activity {RelativeLayout rl;TextView tv,tv2; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_touch913_main); rl=(RelativeLayout)findViewById(R.id.relativeLayout1); tv2=(TextView)findViewById(R.id.textView2); tv=(TextView)findViewById(R.id.textView1); rl.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {// TODO Auto-generated method stubSystem.out.println("触摸的是RelativeLayout");return false;}}); tv.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {System.out.println("触摸的是TextView");int num = event.getAction();int pointer = event.getPointerCount();StringBuffer str = new StringBuffer();for(int i=0;i<pointer;i++){str.append("X:"+event.getX(i));str.append("Y:"+event.getY(i));str.append("持续时间:"+event.getEventTime());str.append(" "+num);}tv2.setText(str);return false;}}); }在Logcat中你每触摸一个空间,都会给出相应触摸信息显示
语音识别:
首先实现 TextToSpeech.OnInitListener,//语音引擎初始化的时候会调用这个接口
和 TextToSpeech.OnUtteranceCompletedListener //单词读完了
然后调用读取TextView上单词的TexttoSpeech()函数,然后调用读取函数speek()
/** * TextToSpeech 让电脑读单词的一个工具 * * android 1.6 之后开始支持 * 语言:英文,欧洲的一些。亚洲语言不支持。 */public class MyttsActivity extends Activity implements TextToSpeech.OnInitListener, // 语音引擎初始化的时候会调用这个接口TextToSpeech.OnUtteranceCompletedListener { // 单词读完了 TextView tv;Button btn;TextToSpeech tts; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tv = (TextView)findViewById(R.id.textView1); btn = (Button)findViewById(R.id.button1); tts = new TextToSpeech(this, this); btn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {tts.speak(tv.getText().toString(), TextToSpeech.QUEUE_ADD, null);}}); } // 开始初始化引擎的时候调用@Overridepublic void onInit(int status) {//读取的语言int result = tts.setLanguage(Locale.US);//设置读取的语言tts.setSpeechRate(10);//设置读取的速度if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED) {Toast.makeText(this, "不支持的语言!", Toast.LENGTH_SHORT).show();}}// 单词读完了调用@Overridepublic void onUtteranceCompleted(String utteranceId) {// TODO Auto-generated method stub}}
以上只是我自己自学android入门的一些事件简介,作为总结和记录学习过程的文章,深挖还是要自己去玩。
更多相关文章
- 分支和循环(二)(零基础学习C语言)
- Android音效SoundPool问题:soundpool 1 not retry
- android 自定义组合控件并实现点击事件
- 让Android程序自动打开软键盘
- Android之ViewPager+Fragment实现页面点击切换和手势滑动
- C语言函数的递归(上)
- Dalvik虚拟机启动全程解析
- 关于android语言切换后通知栏显示的问题
- Android(安卓)Kotlin入门-属性和字段