Android 隐藏键盘并按按钮显示

Android 隐藏键盘并按按钮显示,android,keyboard,lifetime,projects,Android,Keyboard,Lifetime,Projects,我正在创建一个程序,通过条形码阅读器写入编辑文本,因此我不想立即显示键盘,即使我专注于它,我也不想让它可见,我需要按一个按钮来显示键盘,有时只进行编辑。 谢谢我会从一开始就禁用EditText按钮: editText.setEnabled(false); 回答你的问题,是的。即使已禁用,也可以更改文本。禁用仅表示用户无法更改它。您可以通过编程方式对其进行编辑 然后按下按钮时: button.setOnClickListener(new OnClickListener() { @Over

我正在创建一个程序,通过条形码阅读器写入编辑文本,因此我不想立即显示键盘,即使我专注于它,我也不想让它可见,我需要按一个按钮来显示键盘,有时只进行编辑。
谢谢

我会从一开始就禁用EditText按钮:

editText.setEnabled(false);
回答你的问题,是的。即使已禁用,也可以更改文本。禁用仅表示用户无法更改它。您可以通过编程方式对其进行编辑

然后按下按钮时:

button.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        editText.setEnabled(true);
        editText.requestFocus();
    }
});
当按下按钮时,这将自动显示键盘

奖金: 如果要在编辑完成后禁用编辑文本,可以执行以下操作:

editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
    @Override
    public void onFocusChange(View v, boolean hasFocus) {
        if(!hasFocus) {
            editText.setEnabled(false);
        }
    }
});

我建议在不希望编辑时禁用该编辑文本,如果按下按钮(最好使用复选框),则启用该编辑文本。这样,用户将知道文本是否可编辑。你怎么看?关于显示/隐藏键盘,你可以检查这个线程:idk听起来不错,但是如果我禁用它,条形码阅读器可以在上面写吗?我不这么认为……即使它被禁用,您也可以通过编程方式编写它。