阻止EditText在聚焦时显示SoftKeyboard

lor*_*off 2 keyboard android popup

嗯,这让我抓狂了......我已经读过这个,这个这个,但没有什么对我有用.

情景
这是场景:我的民意调查应用程序从配置文件读取调查,问题可能有单个,多个或文本答案.
在第一种情况下,我将RadioButtons添加到活动中,在第二种情况下将复选框添加到第三种情况,并在第三种情况下添加一些多行EditText.

一切工作正常,但是当调查向下滚动焦点自动收到由下一个EditText上是自动显示的SoftKeyboard.
考虑到我的用户可能想要回答第一个问题,然后回到第二个问题,然后跳到最后一个回到第二个回复到第三个问题,这非常令人讨厌.

目前,在第一次EditText第一次接收到焦点时,即使用户继续向下滚动(即使被诅咒的EditText最终失去焦点),键盘也会弹出并仍然保持不变.

问题
我怎样才能有一个EditText只显示键盘,只有当用户点击它时,而不是只收到焦点?

ENVIRO
Level 13 API(Honeycomb)

在此先感谢
Lorenzo(正在认真考虑开设餐厅)

小智 5

在onCreate(..)方法中,您可以将EditText控件设置为不可聚焦使用

EditText.setFocusable(false);
Run Code Online (Sandbox Code Playgroud)

这应该可以防止键盘在滚动时显示.在onClickListener(..)中,您可以使用它重新启用它

EditText.setFocusableInTouchMode(true);
EditText.requestFocus();
Run Code Online (Sandbox Code Playgroud)