gpt4 book ai didi

Android - EditText 以编程方式不显示键盘

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

我正在制作一个使用 ArrayAdapter<String> 的应用程序我正在以编程方式在相对布局内创建一个 editText View ,该 View 全部位于 AppCompatDialogFragment 内.每个editTexts都出现了,我可以点击它们,但如果它没有打开键盘输入。我试过这样的事情:

EditText editText = (EditText) findViewById(R.id.myTextViewId);
editText.requestFocus();
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);

即使我尝试手动打开键盘,它仍然无法打开。
        RelativeLayout listLayout = new RelativeLayout(this.getContext());
listLayout.setLayoutParams(new AbsListView.LayoutParams(
AbsListView.LayoutParams.WRAP_CONTENT,
75));

if(super.getItem(position) == ParameterTypes.String.toString()) {
EditText editText = new EditText(this.getContext());
editText.setWidth(500);
editText.setHint(parameterNames[position]);
editText.setInputType(InputType.TYPE_CLASS_TEXT);
listLayout.addView(editText);
} else if(super.getItem(position) == ParameterTypes.Integer.toString()) {
EditText editText = new EditText(this.getContext());
editText.setWidth(500);
editText.setHint(parameterNames[position]);
editText.setInputType(InputType.TYPE_CLASS_NUMBER);
listLayout.addView(editText);
} else if(super.getItem(position) == ParameterTypes.Double.toString()) {
EditText editText = new EditText(this.getContext());
editText.setWidth(500);
editText.setHint(parameterNames[position]);
editText.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);
listLayout.addView(editText);
return listLayout;

最佳答案

尝试这个

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);

在xml中
android:focusableInTouchMode="true"

关于Android - EditText 以编程方式不显示键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62314661/

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