Pet*_* O. 89 keyboard android android-softkeyboard
您好我有搜索EditText
和搜索Button
.当我输入搜索到的文本时,我想在软键盘上使用ENTER键而不是搜索Button
来激活搜索功能.
提前感谢您的帮助.
Jul*_*ian 148
你可以通过设置OnKeyListener
你的方式来实现EditText
.
这是我自己的代码中的示例.我有一个EditText
命名addCourseText
,addCourseFromTextBox
当点击回车键或d-pad时将调用该功能.
addCourseText = (EditText) findViewById(R.id.clEtAddCourse);
addCourseText.setOnKeyListener(new OnKeyListener()
{
public boolean onKey(View v, int keyCode, KeyEvent event)
{
if (event.getAction() == KeyEvent.ACTION_DOWN)
{
switch (keyCode)
{
case KeyEvent.KEYCODE_DPAD_CENTER:
case KeyEvent.KEYCODE_ENTER:
addCourseFromTextBox();
return true;
default:
break;
}
}
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
Анд*_*чук 40
<EditText
android:id="@+id/search"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/search_hint"
android:inputType="text"
android:imeOptions="actionSend" />
Run Code Online (Sandbox Code Playgroud)
然后,您可以通过为EditText元素定义TextView.OnEditorActionListener来侦听操作按钮上的按下.在侦听器中,响应EditorInfo类中定义的相应IME操作ID,例如IME_ACTION_SEND.例如:
EditText editText = (EditText) findViewById(R.id.search);
editText.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
boolean handled = false;
if (actionId == EditorInfo.IME_ACTION_SEND) {
sendMessage();
handled = true;
}
return handled;
}
});
Run Code Online (Sandbox Code Playgroud)
资料来源:https://developer.android.com/training/keyboard-input/style.html
ite*_*mon 25
可能你可以像这样在EditText中添加一个属性:
android:imeOptions="actionSearch"
Run Code Online (Sandbox Code Playgroud)
小智 5
向EditText添加一个属性,如android:imeOptions ="actionSearch"
这是执行此功能的最佳方式
而imeOptions也有一些其他的值,如"go","next","done"等.
归档时间: |
|
查看次数: |
115309 次 |
最近记录: |