1. 程式人生 > >Android 軟鍵盤 禁用回車功能或者換成搜尋功能

Android 軟鍵盤 禁用回車功能或者換成搜尋功能

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; } }); } }

這裡寫圖片描述