gpt4 book ai didi

java - 键盘未显示用于编辑文本

转载 作者:行者123 更新时间:2023-12-02 10:08:31 25 4
gpt4 key购买 nike

我有一个选择框并在 View 中编辑文本。如果您在customNumberPicker上执行长单击。它将隐藏customNumberPicker并显示Edittext。(编辑文本也做了同样的事情)它工作正常。

但我还希望切换到编辑文本模式时键盘会打开。

这是我的代码

final NumberPicker numberPicker = (NumberPicker) dialog.findViewById(R.id.npWeight);
final EditText editText = (EditText) dialog.findViewById(R.id.edWeight);

numberPicker.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
if (numberPicker.getVisibility() == View.VISIBLE) {
editText.setVisibility(View.VISIBLE);
numberPicker.setVisibility(View.GONE);
editText.setFocusableInTouchMode(true);
editText.requestFocus();
showKeyboard(MyApplication.mainActivity);
}

return true;
}
});

editText.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
editText.setVisibility(View.GONE);
numberPicker.setVisibility(View.VISIBLE);
// hideKeyboard(MyApplication.mainActivity);
return true;
}
});


private static void showKeyboard(Activity activity) {
View view = activity.getCurrentFocus();
InputMethodManager methodManager = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);
assert methodManager != null && view != null;
methodManager.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT);
}

最佳答案

尝试使用以下选项显示键盘:

InputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);                   

inputMethodManager.toggleSoftInputFromWindow(view.getApplicationWindowToken(),InputMethodManager.SHOW_FORCED, 0);

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

对于 fragment ,请尝试以下代码:

public void showKeybarod(){
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
if(getActivity() != null && !getActivity().isFinishing() && getUserVisibleHint()) {
InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);
}
}
},300);
}

关于java - 键盘未显示用于编辑文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55162534/

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