Android --- 进入页面时,不弹出软键盘。当 EditText 被点击时不弹出软键盘,而是调用其他选择器,比如时间选择器等

本文探讨了在Android应用中如何防止EditText在页面加载和点击时弹出软键盘,以及如何在EditText被点击时启动时间选择器等其他选择器。尝试了多种方法,包括设置InputType、修改AndroidManifest、调整布局属性和设置SoftInputMode,但只有在将EditText替换为TextView后,问题得到解决,使得第二次点击能触发时间选择器。
摘要由CSDN通过智能技术生成

功能需求:

1.进入页面时,不弹出软键盘
2.当 EditText 被点击时不弹出软键盘,而是调用其他选择器,比如时间选择器等

搜索百度测试:

1.百度上说用

editText.setInputType(InputType.TYPE_NULL);

亲测无效,原因可能是低版本才有效

2.在 AndroidManifest 中设置当前 Activity 属性

android:windowSoftInputMode="stateHidden|stateAlwaysHidden"

只能解决第一个问题,不能解决第二个问题
3. EditText 的父布局设置:

android:focusable="true"
android:focusableInTouchMode="true"

亲测无效

4.在onCreate中加上:

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

只能解决第一个问题,不能解决第二个问题

5.设置

et_activity_end_time.setShowSoftInputOnFocus(false);

亲测无效,经过版本判断之后也无效

问题进一步描述:

到这里我发现一个问题,当我第一次点击 EditText 的时候,会弹出软键盘,第二次点击的时候才会出现时间选择器

解决方法:

这个可能不是最有效的方法,但是可以借鉴,就是把 EditText 换成 TextView ,就不会出现以上的情况了,搭配着时间选择器使用非常方便。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梁同学与Android

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值