EditText中onEditorAction监听事件执行两次
2018-03-06 15:31
579 查看
Android的EditText通过setOnEditorActionListener给文本编辑框设置监听事件,但是在其处理方法onEditorAction中的逻辑在每次回车后都触发了两次,原来是在键盘回车的ACTION_UP和ACTION_DOWN时都会触发这个方法,因此修改代码如下,就防止了两次执行:
1 public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 2 //以下方法防止两次发送请求 3 if (actionId == EditorInfo.IME_ACTION_SEND || 4 (event != null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) { 5 switch (event.getAction()) { 6 case KeyEvent.ACTION_UP: 7 //发送请求 8 String keyWord = et_search.getText().toString().trim(); 9 if (null == keyWord) 10 keyWord = ""; 11 dismisspopup(); 12 LogUtils.d("向服务器发送搜索请求:" + keyWord); 13 //发起查询 14 searchByKeyWord(keyWord); 15 hideSoftInput(); 16 return true; 17 default: 18 return true; 19 } 20 } 21 return false; 22 }
相关文章推荐
- EditText中onEditorAction监听事件执行两次
- android修改软键盘的回车键为搜索键以及点击时执行两次监听事件的问题
- EditText中onEditorAction监听事件执行两次
- EditText监听事件setOnEditorActionListener onEditorAction执行两次
- android修改软键盘的回车键为搜索键以及点击时执行两次监听事件的问题
- Android onTouch 点击事件执行两次分析
- 回车监听事件执行多次
- iscroll iscrollview 与jquerymobile集成时,滚动区域点击一次执行两次点击事件的解决方案
- 高德地图marker事件监听-高德地图marker绑定事件就执行了[解决立即执行]
- 点击软键盘搜索键搜索事件(启动Activity)被执行两次
- label的click()事件执行两次
- Android Button按钮点击两次之后,才执行点击事件的操作。
- NodeJs——(1)封装,调用,执行,访问路径,http,函数编程,等待函数,事件监听
- JList监听,选择会得到两次事件
- [问题贴]mui.openWindow+自定义事件监听操作让alert()执行两次
- 完美解决editText监听键盘回车会执行两次的解决方法
- android设置软键盘搜索键以及监听搜索键点击时发生两次事件的问题解决
- 防止EditText的KEY事件执行两次
- 解决Android设置软键盘搜索键以及监听搜索键点击时发生两次事件的问题
- android:windowSoftInputMode属性详解以及editText监听键盘回车会执行两次的解决方法