我有一个用于过滤列表的edittext。我的问题是,当我点击edittext时,键盘没有出现,当我按下输入时它就不会关闭。
我正在使用此代码进行过滤:
adapt = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,veik);
lv.setTextFilterEnabled(true);
ed.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
// veikali.this.veik.getFilter().filter(s);
adapt.getFilter().filter(s);
}
});
ed.setClickable(true);
你能告诉我当我点击edittext并在按下回车时隐藏它时,我怎样才能显示键盘?
答案 0 :(得分:1)
如果您使用的是TouchScreen手机,则在触摸edittext时会出现SoftKeyboard。至于查询的第二部分,请尝试以下方法:
ed.setOnKeyListener(new View.OnKeyListener()
{
@Override
public boolean onKey(View editView, int keyCode, KeyEvent event)
{
Context mContext = MyClass.this;
if( keyCode == KeyEvent.KEYCODE_ENTER ){
InputMethodManager imm = (InputMethodManager) mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(ed.getWindowToken(),0);
return true;
}
return false;
}
})
答案 1 :(得分:1)
这似乎是很多额外的工作。我并不是每个人都记得必须将这个功能提供给我的edittexts,因为默认情况下应该这样做。
你确定edittext可以聚焦并且没有某种类型的视图阻止吗? 如果您在列表视图中使用,则可能需要查看此帖子Focusable EditText inside ListView
答案 2 :(得分:0)
作为简单的解决方案,尝试在AndroidManifest.xml中为activity的标记添加以下属性:
android:windowSoftInputMode="stateVisible|adjustResize"