我在用户在输入编辑文本时按Enter键时尝试执行操作,搜索。它不起作用。代码是:
edtSearch.setOnKeyListener(new OnKeyListener(){
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER){
System.out.println("test");
return true;
}
return false;
}});
XML for edittext,
<EditText
android:id="@+id/edtSearch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10" >
<requestFocus />
</EditText>
知道为什么它不起作用。
答案 0 :(得分:-1)
您应该设置输入类型和IME选项,例如:
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number"
android:imeOptions="actionDone">`
并在您的活动中将OnEditorActionListener设置为EditText:
edit.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if(actionId==EditorInfo.IME_ACTION_DONE){
Log.i(TAG,v.getText().toString());
}
return false;
}
});