Android 軟鍵盤 禁用回車功能或者換成搜尋功能
阿新 • • 發佈:2019-01-26
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;
}
});
}
}