android Fragment获取EditText 从软键盘中输入下一个action的监听

本文介绍了在Fragment中使用EditText控件时如何通过setOnEditorActionListener监听键盘上的下一个和完成操作,从而实现在输入框间切换或关闭软键盘。并通过实例代码演示了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天是2016年的第2天,还是觉得作为一个程序员,写写博客来回顾自己在开发中遇到的一些问题,对自己来说是一个不错的技术积累方式。这可以让我对所遇到的问题有个更深刻的印象,也能对有遇到相同问题的朋友们能有个参考,废话不多说,进入正题吧!
EditText 这个控件应该是在开发过程中用得比较多的一个控件,对于它的使用相信大家也都用得很熟了,我今天要说的是, 在Fragment 中,使用EditText 时,要从软键盘中获取得到键盘上“下一个”,“完成”这些action了, 这时,便可以切换到下一个EditText中继续进行输入的操作或关闭软键盘了。
可能大家会问,重写Activity的dispatchKeyEvent(KeyEvent event)方法,在方法中判断event.getKeyCode() 不就行了么,确实,这是当你在Activity 中使用EditText 时想要实现上方所述功能的一种方法。
看到这里,可能细心的读者会发现了,上面说的这个方法是重写 Activity 中的方法,可是现在我们是在Fragment 中了,在Fragment 是没有dispatchKeyEvent(KeyEvent event)这个方法的,那这时要怎么办呢,我跟大家都是一样的,有问题时第一反应就是找度娘了,度娘也没能让我找到方法解决,最后还是自己瞎撞撞出来的。

如图上的代码所示,只需要给EditText 加一个setOnEditorActionListener 的监听即可,在重写的方法里去判断当前点击的 actionId 是否是IME_ACTION_NEXT(下一个),IME_ACTION_DONE(完成,软键盘会自动消失)。
最后说一句,第一次写博客可能描述得有些冗余了,但这也是自己迈出的第一步了,希望自己能坚持下去,一步一个脚印,不断积累。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值