android中物理键盘彻底代替软键盘问题

首先,是用物理键盘替代,是替代而不是阉割edittext控件的部分功能。
网上很多方案,要么是如何隐藏软键盘,要么阉割掉edittext部分功能

先说隐藏。独立调用是可以实现(具体隐藏方法网上很多),但是如果想实现正常点击edittext后不弹出软键盘,靠那些个隐藏方法是没用的。可以在onTouch,onFocusChange中去调用,根本无济于事,给人感觉edittext弹出操作是在这些listener被调用之后的。
而更坑的做法是通过改变InputType,或者设置不允许点击获得焦点,直接把edittext阉割了。这样的后果是,别扭。InputType失效本就是很坑爹的事,你想显示numberPassword的效果都不行。不允许获得焦点就更坑,调整光标位置就别想了。总之,就是别扭。
真正靠谱的办法应该是在android系统层关闭键盘,然后用物理键盘替代,或者自定义输入控件+代码逻辑实现输入。后者略复杂,但如果仅仅是一些数字输入之类是完全没有问题自定义的。

你可能感兴趣的:(android)