您的位置:首页 > 移动开发 > Android开发

Android 软键盘 禁用回车功能或者换成搜索功能

2017-01-02 14:50 441 查看

hello 2017

图说2016去华东理工。



Android 软键盘 禁用回车功能

如果布局文件中只有一个EditText。可以设置EditText 的

android:singleLine=”true”

android:imeOptions=”actionDone”

就可以了。

<EditText
android:id="@+id/edittext_done"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="action_done"
android:imeOptions="actionDone"
android:singleLine="true" />


这时候在输入完成后,点击软键盘的回车键,软键盘就会自动隐藏。



如果布局文件中有多个EditText,前面的EditText 的设置

android:imeOptions=”actionNext”,android:singleLine=”true”

,然后最后一个EditText 设置android:imeOptions=”actionDone”,android:singleLine=”true” 在前面的EditText,输入的完成后回车键就会变成“下一步”,最后一个EditText输入完成后,点击回车键,软键盘就会隐藏。



Android 软键盘回车功换成搜索功能

首先在布局文件里给EditText添加属性,android:imeOptions=”actionSearch”

EditText添加监听Enter事件

public class InputFirstActivity extends AppCompatActivity {

@BindView(R.id.edittext_search)
EditText edittextSearch;
InputMethodManager manager;//输入法管理器

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_input_first);
ButterKnife.bind(this);
manager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
search();
}

private void search() {
edittextSearch.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN) {
//先隐藏键盘
if (manager.isActive()) {
manager.hideSoftInputFromWindow(edittextSearch.getApplicationWindowToken(), 0);
}
//自己需要的操作
Toast.makeText(InputFirstActivity.this, "hello 2017!", Toast.LENGTH_SHORT).show();
}
//记得返回false
return false;
}
});
}

}




参考链接:

【1】:https://yq.aliyun.com/articles/50313

【2】:http://blog.csdn.net/mrzhang_happy/article/details/48435211
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: