edittext 监听无效_Android中EditText 设置 imeOptions 无效问题的解决方法
有时候我们需要在EditText 输出完之后 需要在键盘出现 右下角变成“Go”或“前往 搜索时;通常我们需要设置Android:imeOptions属性。Android:imeOptions的值有actionGo、 actionSend 、actionSearch、actionDone等
但是今天我发现设置了无效 那是因为我设置了 android:maxLines="1"
解决方法 就是去掉 android:maxLines="1" 设置 android:singleLine="true" 有必要还需要 inputType设置为text
网上有一种监听点击回车 搜索的写法 这种写法 会执行两次 解决方法是
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId==EditorInfo.IME_ACTION_SEND ||(event!=null&&event.getKeyCode()== KeyEvent.KEYCODE_ENTER))
{
//do something;
return true;
}
return false;
}
});
解决方法是 1 (ps 这种方法我感觉写法有点多余)
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
//以下方法防止两次发送请求 再判断动作
if (actionId == EditorInfo.IME_ACTION_SEND ||
(event != null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
switch (event.getAction()) {
case KeyEvent.ACTION_UP:
//发送请求
String keyWord = et_search.getText().toString().trim();
if (null == keyWord)
keyWord = "";
dismisspopup();
LogUtils.d("向服务器发送搜索请求:" + keyWord);
//发起查询
searchByKeyWord(keyWord);
hideSoftInput();
return true;
default:
return true;
}
}
return false;
}
还有一种写法 直接监听actionId等于搜需要的时间即可
EditText editText = (EditText) contentView.findViewById(R.id.editText);
editText.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
Toast.makeText(getActivity(), "1111111",Toast.LENGTH_SHORT).show();
}
return false;
}
});
以上所述是小编给大家介绍的Android中EditText 设置 imeOptions 无效问题的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
edittext 监听无效_Android中EditText 设置 imeOptions 无效问题的解决方法相关推荐
- Android 监听Home键、Back键、多任务键最新解决方法
前言 在开发中,我们可以经常看金融银行之类APP,退到后台都会给出提示,提高安全性.实现这种功能就需要去监听系统的按键操作,最常用的就是监听Back键.Home键和多任务键. 但是Android系统默 ...
- oracle监听程序无法分配,Oracle监听器服务不能启动的解决方法
Oracle监听器服务不启动的时候可采取以下措施予以解决: 一.连接主机字符串,提示没有监听器 SVRMGR> connect internal/oracle@orcl: ORA-12541: ...
- 关于“ORA-12518: TNS: 监听程序无法分发客户机连接”的一种解决方法
2019独角兽企业重金招聘Python工程师标准>>> 问题场景:昌平的服务器修改了静态ip,并重启了几次机器,后来在实验室通过远程桌面访问oracle数据库,发现sql devel ...
- java edittext 输入监听_Android应用开发之Android EditText 监听用户输入完成的实例
本文将带你了解Android应用开发Android EditText 监听用户输入完成的实例,希望本文对大家学Android有所帮助. 我们都知道, Android EditText输入框,并没有 ...
- 多个editText监听事件
今天做项目,一个界面中有多个editText,由于实现的逻辑基本相同,所有如果为每一个editText都写一个监听,会显得比较麻烦, 于是,就把editText的监听事件写到一个类里面,通过构造方法, ...
- android全局监听onkeydown,Android中的几个onTouch()事件、onKeyDown监听返回键无效
Android中的几个onTouch()事件.onKeyDown监听返回键无效 一:Android中的几个onTouch()事件 继承SimpleOnGestureListener,HahaGestu ...
- C#实现串口监听(以中盛来电显示盒为例)
C#实现串口监听(以中盛来电显示盒为例) 中盛来电显示盒(DTMF/FSK双制式)设备可靠,接口简单规范,编程处理非常容易,所以这里以该设备为例介绍一下C#串口监听的编程.该设备深受广大程序员喜爱,订 ...
- python调用so库输出传入指针_python中使用ctypes调用so传参设置遇到的问题及解决方法...
问题 近日在做一组声纹聚类时,使用了另一团队同学开发的声纹距离算法.该算法对外提供的是一组so包,需要使用方自己去使用.在python中调用纯so包一般使用ctypes类库,用起来看起来简单但也有不少 ...
- oracle连接中出现错误ORA-12541,ORA-12514,ORA-01017的解决方法
1.出现如下错误:ORA-12541:TNS:no listener,如下图所示: 错误原因是我们没有开启Listener监听器服务,解决方法是在服务中开启这个服务,如下图所示. 2.出现如下错误:O ...
最新文章
- Linux性能监控和调试
- RxSwift 之过滤操作
- 轴只显示5个刻度_组团投资5亿元!武平集中签约5个新型显示产业链投资项目
- Python 字符串操作
- 3 镜像仓库Harbor安装
- potplayer 皮肤_如何美化背部皮肤?
- 软件设计和设计的问题
- 程序员必须知道的15件事(转)
- 计算机工程硕士论文全套,计算机工程硕士 论文写作注意事项
- git remote 命令的用法
- Looper对文件描述符的监控与处理
- RabbitMQ ACK 机制的意义是什么?
- linux多队列网卡中断绑定,网卡中断及多队列 - osc_mzx9t9jk的个人空间 - OSCHINA - 中文开源技术交流社区...
- ShaderJoy —— 最简单的 “RayTrace(光线追踪)” 的实现 【GLSL】
- 如何提高研发部门工作效率的探讨
- dedecms 织梦配置 手机 wap 站点,并绑定二级域名
- Java、解一元二次方程
- 常用的git命令(实用)
- 【数据分析】双因素方差分析
- 关于在linux测试启动盘命令(qemu的使用)
热门文章
- 全国大学生智能车竞赛组委会秘书处与Mathworks初步讨论竞赛合作事宜
- 近期几个电车调试视频
- 训练生成对抗网络的一些需要关注的问题
- 人工神经网络控制下的智能车
- c++ 图的连通分量是什么_图与图论基本概念(图论算法入门)
- hive窗口函数分组排序并取第一个值_Hive(七)Hive分析窗口函数
- php在线备忘录,备忘录模式(Memento)
- drools规则中调用其它规则_简化机器学习中的关联规则
- java 裁剪 pdf_Java PDF 切割、截取、合并工具类、转图片等
- IC/FPGA校招笔试题分析(一)