我正在使用OnKeyListner来解决通过软键盘在编辑文本上按下的“Enter”键。 [Android。]我想当用户从软键盘输入键时它应该执行一些操作 - >从编辑框中获取输入并传递给某个功能进行处理。 这是代码:
editbox.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
// Code For action on key press
input = editbox.getText().toString();
if(mEngine.init(input, getApplicationContext()))
{ sharePref = getSharedPreferences("info",MODE_PRIVATE);
edit = sharePref.edit();
edit.putString("editbox",input);
edit.commit();
// inputDialog.dismiss();
}
else
{
............
}
inputDialog.dismiss();
return true;
}
return false;
}
});
似乎没有用。如果我做错了,请提供帮助。
答案 0 :(得分:1)
在EditText中设置此属性
android:imeOptions="actionDone"
android:imeActionLabel="Enter"
您还可以使用setOnEditorActionListener 这是示例代码..
editbox.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
if(actionId == 0 || actionId== EditorInfo.IME_ACTION_DONE)
{
//Paste your code here.
}
return false;
}
});
答案 1 :(得分:0)
这样做可以帮助