android自定义键盘光标不显示解决方法

本文详细介绍了如何在不同Android版本中实现EditText输入框的软键盘显示与隐藏功能,针对Android 4.0以下版本使用了简洁的InputType.TYPE_NULL方法,而对于Android 4.0及以上版本,则通过设置软键盘模式和调用特定方法来实现,确保在不同设备上都能正确控制键盘的显示和隐藏。

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

如果是android4.0以下,那么

editText.setInputType(InputType.TYPE_NULL);

就够了,android4.0以上屏蔽软键盘并且有光标,需要用到

if (android.os.Build.VERSION.SDK_INT <= 10) {//4.0以下 danielinbiti 
               editText.setInputType(InputType.TYPE_NULL); 
            } else { 
                this.act.getWindow().setSoftInputMode( 
                        WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 
                try { 
                    Class<EditText> cls = EditText.class; 
                    Method setShowSoftInputOnFocus; 
                    setShowSoftInputOnFocus = cls.getMethod("setShowSoftInputOnFocus", 
                            boolean.class); 
                    setShowSoftInputOnFocus.setAccessible(true); 
                    setShowSoftInputOnFocus.invoke(editText, false); 
                } catch (Exception e) { 
                    e.printStackTrace(); 
                }  
 }  

 

转载于:https://www.cnblogs.com/s413574930/p/3406283.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值