我有一个带有edittext的app,用户只需用软键盘写一些东西。用户点击按钮后会看到弹出窗口,在这种情况下用户仍然看到了键盘。当用户在弹出窗口外单击时,它应该消失,并且它可以正常工作,但如果用户点击键盘,弹出窗口将不会消失。也许有人处理同样的问题,可以帮助我。
步骤:
打开应用
调用键盘
调用popupwindow
开始输入
结果:弹出窗口未隐藏,文字未输入
答案 0 :(得分:0)
如果我理解正确,您希望键盘在用户点击时消失? 如果是这样,请为EditText执行此操作:
final EditText sample = (EditText) findViewById(R.id.popupET);
sample.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
InputMethodManager in = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
in.hideSoftInputFromWindow(sample.getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
}
});
它的作用就是等待用户输入任何键(按键盘上键)然后隐藏它。
示例EditText是您目前在代码中拥有的字段。
如果一切正常,请告诉我