Android 如何让EditText不自动获取焦点&隐藏软键盘
感谢大佬:https://blog.csdn.net/a18615971648/article/details/72869345
有时候的项目当中进入某个页面edittext会自动获取焦点弹出软键盘,用户体验非常不好,那么如何避免这种情况呢?在网上查了一下大概有三种方法。
第一种:设置一个默认的View,在页面加载的时候调用requFocus()方法,前提是该View的setFocusable()要设置为true
第二种:直接调用edittext的clearFocus()方法,不过该方法有时候会不生效
第三种:在布局文件中给edittext的父控件增加两个属性
android:focusable="true"
android:focusableInTouchMode="true"
例如:
android:layout_height="50dp"
android:background="@drawable/bg_input"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:gravity="center_vertical" android:focusable="true"
android:focusableInTouchMode="true" >
android:layout_width="0dp"
android:layout_weight="5"
android:layout_height="wrap_content"
android:hint="手机号码"
android:layout_toRightOf="@id/iv_login"
android:paddingLeft="5dp"
android:inputType="number"
android:background="@null"
另外还有一种方法是强制隐藏输入法,但并不会使edittext失去焦点
InputMethodManager imm = (InputMethodManager)getSystemService(
Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
补充:
参考:https://ask.csdn.net/questions/39
Android 如何让EditText不自动获取焦点&隐藏软键盘的更多相关文章
- Android 如何让EditText不自动获取焦点 (转)
在项目中,一进入一个页面, EditText默认就会自动获取焦点. 那么如何取消这个默认行为呢? 在网上找了好久,有点 监听软键盘事件,有点 调用 clearFouse()方法,但是测试了都没有! x ...
- Android开发UI之手动显示和隐藏软键盘
1.方法一(如果输入法在窗口上已经显示,则隐藏,反之则显示) InputMethodManager imm = (InputMethodManager) getSystemService(Contex ...
- Android 如何让EditText不自动获取焦点
解决之道:在EditText的父级控件中找一个,设置成 android:focusable="true" android:focusableInTouchMode=&quo ...
- Android:让EditText不自动获取焦点
解决方法: 在EditText的父级控件中加入属性: android:focusable="true" android:focusableInTouchMode="tru ...
- Android 设置让EditText不自动获取焦点
在EditText所在的父控件中设置如下属性: android:focusable="true" android:focusableInTouchMode="true&q ...
- 如何让EditText不能自动获取焦点(转)
转载地址:http://blog.csdn.net/subaohao/article/details/9043895 在activity中放置了1个或1个以上的EditText,进入该activity ...
- 让EditText不能自动获取焦点
在activity中放置了1个或1个以上的EditText,进入该activity的时候第一个EditText会接收焦点,我希望里面所有的EditText默认是不接收焦点的,该怎么做呢? 方法: 在第 ...
- Android点击空白处,隐藏软键盘
在做登陆或者注册的时候,软键盘经常可能会挡住一些界面.我们需要在输入完成之后隐藏软键盘. 在我们点击空白处或者非EditText的地方来隐藏软键盘. public class HomeActivity ...
- 在android中如何通过点击edittext之外的部分使软键盘隐藏
我们知道在android中点击edittext框就会自动弹出软键盘,那怎么通过点击edittext之外的部分使软键盘隐藏呢?(微信聊天时的输入框就是这个效果,这个给用户的体验还是很不错的) 首先我们要 ...
随机推荐
- [zbar]zbar条码扫描器解析示例
// // Created by leoxae on 2020/3/30. // #include "BarCodeRecogntion.h" string BarCode::Ba ...
- Capstone CS5266替代AG9311 Type-C转HDMI带PD3.0+USB3.0拓展坞方案
Capstone CS5266替代AG9311 Type-C转HDMI带PD3.0+USB3.0拓展坞方案CS5266是 Capstone 最新推出的一款用于USB TYPE-C端口的高度集成.高 ...
- 使用 DML语句针对仓库管理信息系统,进行查询操作
查看本章节 查看作业目录 需求说明: 查询所有电视机产品的基本信息,要求显示产品编号.产品名和进货单价 查询所有产品的基本信息,要求按类型升序.价格降序显示查询信息 显示所有不重复的产品类型 显示进货 ...
- shell2-if判断
1.条件测试类型(判断类型): 将测试结果做为判断依据. 测试类型有以下三种 [ 命令 ] :命令测试法(最常用的) [[ 命令 ]] : 关键字测试 test 命令 以上是三种都可以,注意单词 ...
- Linux shc 命令手册
shc Generic shell script compiler. https://www.linux-man.cn/command/shc/ #Compile a shell script: sh ...
- mysql5.7初始化密码报错 ERROR 1820 (HY000): You must reset your password using ALTER USER statement
mysql初始化密码常见报错问题 1,mysql5.6是密码为空直接进入数据库的,但是mysql5.7就需要初始密码 cat /var/log/mysqld.log | grep password 2 ...
- win10中查看开关机时间及查看admin的RID的方法
原文链接: https://www.toutiao.com/i6772133439593251339/ 打开系统的注册表 键盘输入win+r组合键出现运行窗口命令 输入regedit 按回车键,进入注 ...
- .NET Core 利用委托进行动态流程组装
引言 在看.NET Core 源码的管道模型中间件(Middleware)部分,觉得这个流程组装,思路挺好的,于是就分享给大家.本次代码实现就直接我之前写的动态代理实现AOP的基础上直接改了,就不另起 ...
- Spark-寒假-实验2
1. 计算级数 代码: import scala.io.StdIn object jishu { def main(args:Array[String]) { var Sum=0.0 println( ...
- 动态多条件mysql模糊查询
sql拼接函数 public static String Instructor_sql_whole_study(String[] val_ids,String[] val_values) { Stri ...