在SDK 21之前,TextView设置ShowSoftInputOnFocus等效项



我有一个EditText,我希望我的应用程序在我专注于它时永远不要显示软键盘。我使用的是外部键盘。

我想在我的活动的onCreate:中这样做

EditText debugPrompt = (EditText)findViewById(R.id.debug_prompt);
debugPrompt.setShowSoftInputOnFocus(false);

问题是,我使用的是SDK 19,而setShowSoftInputOnFocus是在21中添加的。有类似的东西吗?

到目前为止,我最好的尝试是:

getWindow().setSoftInputMode(
            WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
EditText debugPrompt = (EditText)findViewById(R.id.debug_prompt);
debugPrompt.requestFocus();

这是工作的一部分。键盘隐藏在第4行之后,但当我在EditText内部敲击时会显示出来。

public static void disableinputRetaincursor(EditText editText) {
    if (Build.VERSION.SDK_INT >= 11) {
        editText.setRawInputType(InputType.TYPE_CLASS_TEXT);
        editText.setTextIsSelectable(true);
    } else {
        editText.setRawInputType(InputType.TYPE_NULL);
        editText.setFocusable(true);
    }
}

相关内容

  • 没有找到相关文章

最新更新