我正在使用隐藏的EditText(可见性未设置为不可见,而EditText具有0dp的宽度和高度)来接收用户输入。我正在使用输入数据来填充其他TextView。我之所以这样做是因为我不希望可见表单(TextViews)具有与实际EditText相同的属性,但我确实想使用软键盘。
我的问题是,当用户选择隐藏键盘时,无论是通过按回或“完成”按钮,我想让它在点击TextView时重新出现,这样他们就可以再次开始编辑隐藏的EditText。
我尝试了以下代码,但没有成功:
if(hiddenEt.requestFocus()) {
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
}
if语句中的代码确实运行,但软键盘不再出现。
实际调用软键盘是否有单独的功能?
答案 0 :(得分:1)
点击后在textview中尝试以下代码..
hiddenEt.requestFocus();
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(hiddenEt, InputMethodManager.SHOW_IMPLICIT);
答案 1 :(得分:0)
InputMethodManager imm=(InputMethodManager)getSystemService(yourActivity.this.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
在清单文件中添加android:windowSoftInputMode="stateVisible|adjustResize|adjustPan"
。
<activity
android:name=".yourActivity"
android:configChanges="keyboardHidden|orientation"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateVisible|adjustResize|adjustPan" >
</activity>