gpt4 book ai didi

java - 弹出 AlertDialog 时显示键盘

转载 作者:行者123 更新时间:2023-12-01 04:47:05 24 4
gpt4 key购买 nike

我研究了很多关于 SO 的答案,并提出了以下代码来在弹出对话框时显示键盘:

final AlertDialog alertDialog = new AlertDialog.Builder(this).create();
alertDialog.setTitle("Title");
final EditText input = new EditText(this);
input.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View view, boolean focused) {
alertDialog
.getWindow()
.setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);

}
});
input.setFocusable(true);
input.requestFocus();
alertDialog.setView(input);

alertDialog.show();

显示对话框,但键盘未弹出。如果这有区别的话,这一切都在 onTouch(...) 方法中。

我的应用程序仅支持横向模式。我发现在纵向模式下,它正在显示。这是为什么?

感谢任何帮助。

最佳答案

看起来是横向模式让我失望了。下面的代码立即解决了问题:

imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,
InputMethodManager.HIDE_IMPLICIT_ONLY);
imm.showSoftInput(input, InputMethodManager.SHOW_FORCED);
alertDialog
.getWindow()
.setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);

关于java - 弹出 AlertDialog 时显示键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15650005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com